运行 每个子文件夹中的命令(或批处理文件)
Run command (or batch file) in every subfolder
我想要 运行 一个脚本(我已经在 .bat
文件中了)
"c:\Flac\flac.exe" -8 *.wav --verify --delete-input-file --replay-gain
在主文件夹的所有子文件夹中。
如果我将此 .bat
文件和 copy/paste 放入任何文件夹并 运行 它,效果很好,我得到了预期的结果。但是,如果我有一个包含 50 个文件夹的主文件夹,我想在其中执行此操作,则需要永远复制和粘贴该文件 50 次。
一直在尝试找出使用(我假设)命令的语法
FOR /R
但似乎无法正确处理。
例如,假设目录树是这样的:
c:\
FLAC
flac.exe
flac BATCH.bat
Music to be converted
1
2
3
我想 运行 C:\Music to be converted
的每个子文件夹中的 C:\FLAC\flac BATCH.bat
我试过了
FOR /R "C:\Music to be converted" %X IN (*.wav) DO "C:\FLAC\flac BATCH.bat" "%X"
但这不起作用。我需要 FOR /R
命令来浏览子文件夹,不是吗?
根据我的评论。
从命令行:
For /D %A In ("C:\Music to be converted\*") Do @(PushD "%~A" & "C:\Flac\flac.exe" -8 *.wav --verify --delete-input-file --replay-gain & PopD)
或作为批处理文件:
@Echo Off
For /D %%A In ("C:\Music to be converted\*") Do (PushD "%%~A"
"C:\Flac\flac.exe" -8 *.wav --verify --delete-input-file --replay-gain
PopD)
我想要 运行 一个脚本(我已经在 .bat
文件中了)
"c:\Flac\flac.exe" -8 *.wav --verify --delete-input-file --replay-gain
在主文件夹的所有子文件夹中。
如果我将此 .bat
文件和 copy/paste 放入任何文件夹并 运行 它,效果很好,我得到了预期的结果。但是,如果我有一个包含 50 个文件夹的主文件夹,我想在其中执行此操作,则需要永远复制和粘贴该文件 50 次。
一直在尝试找出使用(我假设)命令的语法
FOR /R
但似乎无法正确处理。
例如,假设目录树是这样的:
c:\ FLAC flac.exe flac BATCH.bat Music to be converted 1 2 3
我想 运行 C:\Music to be converted
C:\FLAC\flac BATCH.bat
我试过了
FOR /R "C:\Music to be converted" %X IN (*.wav) DO "C:\FLAC\flac BATCH.bat" "%X"
但这不起作用。我需要 FOR /R
命令来浏览子文件夹,不是吗?
根据我的评论。
从命令行:
For /D %A In ("C:\Music to be converted\*") Do @(PushD "%~A" & "C:\Flac\flac.exe" -8 *.wav --verify --delete-input-file --replay-gain & PopD)
或作为批处理文件:
@Echo Off
For /D %%A In ("C:\Music to be converted\*") Do (PushD "%%~A"
"C:\Flac\flac.exe" -8 *.wav --verify --delete-input-file --replay-gain
PopD)