Shell
需要來自批處理腳本目錄列表的相對路徑
我有一個簡單的批處理腳本,它遞歸地查看目錄中的所有文件和文件夾,並將文件清單寫入文本文件。它目前看起來像這樣:
dir /b/s > files.txt
該
/b
方法不提供任何額外資訊,並/s
使其在子文件夾中遞歸。範例輸出為:C:\Users\mark\Desktop\site\site\Web C:\Users\mark\Desktop\site\site\Web\Themes C:\Users\mark\Desktop\site\site\Web\Themes\Sitev2 C:\Users\mark\Desktop\site\site\Web\Themes\Sitev2\images C:\Users\mark\Desktop\site\site\Web\Themes\Sitev2\style C:\Users\mark\Desktop\site\site\Web\Themes\Sitev2\images\site C:\Users\mark\Desktop\site\site\Web\Themes\Sitev2\images\site\beta.gif C:\Users\mark\Desktop\site\site\Web\Themes\Sitev2\style\site.css C:\Users\mark\Desktop\site\site\Web\Themes\Sitev2\style\ie7.css
我想要兩件事:
- 僅列出此列表中的文件,而不列出文件和文件夾
- 我希望路徑與呼叫批處理腳本的位置相對
例如,我在
C:\Users\mark\Desktop\site\site\
文件夾中有腳本,所以我不想看到這一點。是否可以做這兩件事,如果可以,任何人都可以幫忙嗎?
dir /b /s /a-d
只會給你文件。我認為對於相對路徑,您需要做的不僅僅是一個簡單的批處理文件,例如呼叫一些 vbscript 來(1)獲取目前目錄,(2)打開文本文件,(3)進行搜尋並替換文本文件,並 (4) 保存結果。
您可以獲取unxutils套件,將 find.exe 放在您的起始目錄中,然後使用以下內容啟動它:
./find.exe . -type f > result.txt
只是我的2cts。