我有一个文件夹,其中有几百个子文件夹,每个子文件夹中只有一个文件。如何重命名这些文件并为其指定各自父文件夹的名称?我是初学者,所以对代码的解释将受到高度赞赏:)
答案 0 :(得分:0)
这可能有所帮助:
@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"
更改第二行以适应包含所有子文件夹的目录名称。