-2
我有一個文件夾中有幾百個子文件夾,每個子文件夾中只有一個文件。如何重命名這些文件併爲它們分別提供父文件夾的名稱?我是一個初學者,所以代碼的解釋將高度讚賞:)批處理文件重命名文件並給出父文件夾的名稱
我有一個文件夾中有幾百個子文件夾,每個子文件夾中只有一個文件。如何重命名這些文件併爲它們分別提供父文件夾的名稱?我是一個初學者,所以代碼的解釋將高度讚賞:)批處理文件重命名文件並給出父文件夾的名稱
下面是一些可以幫助:
@Echo Off
(Set dRoot=C:\Users\Pankan\MyDirectory)
If /I "%CD%" NEq "%dRoot%" (PushD "%dRoot%" 2>Nul||Exit/B)
For /F "Tokens=1*" %%A In ('RoboCopy /L /S /NC /NFL /NJH /NJS "%CD%" null *.*'
) Do If "%%A"=="1" Call :Sub "%%B"
Exit/B
:Sub
Set "pDir=%~1"
For %%A In ("%pDir:~,-1%") Do Set "nDir=%%~nxA"
For %%A In ("%~1*") Do If /I "%%~nxA" NEq "%nDir%%%~xA" Ren "%%A" "%nDir%%%~xA"
變更線兩條,以滿足持有所有子文件夾的目錄名。
你必須先嚐試一下。 –
在命令提示符下鍵入'Help'。對於列出的每個命令,請鍵入'help'(例如'help dir')或' /?'(例如'dir /?')。這會讓你開始'cd c:\ program files&For/f「delims =」%A in('Dir/b/s「c:\ Program Files \ *。exe'')執行Echo%〜dpnxA'。有關特殊字符的幫助,請參閱http://stackoverflow.com/questions/31820569/trouble-with-renaming-folders-and-sub-folders-using-batch –
2016-10-10 22:07:15
答案可能的重複:[如何批量添加文件夾名稱到文件名稱?](http://stackoverflow.com/q/16987846/3439404)和[很多類似的問題](http://stackoverflow.com/search?q=%5Bbatch-file%5D+add+folder+名稱+到+文件+名) – JosefZ