我正在整理一批以运行一个支持音频转换器。批处理工作,您将它放入一个文件夹并转储您需要转换到同一文件夹的每个文件,它循环每个文件并将转换后的文件输出到转换的文件夹名称。当你运行它时,它就坐在那里直到完成。我想要做的是在每个循环的开头说“转换文件1”“转换文件2”等等,以便用户可以看到一些进展。我只是不知道如何添加它。这是我到目前为止。
@echo off
color Fc
echo Remember to put this program and the audio files to convert into the same folder!!!!!
pause
if not exist converted MD converted
for /r . %%f in (*.wav) do "C:\Program Files\Verint\Playback\CommandLineConvertor.exe" "%CD%\%%~nxf" "%CD%\converted\%%~nxf"
echo All files have been converted
pause
end
谢谢!
答案 0 :(得分:3)
您可以将DO
更改为多行,并在循环中回显,如下所示:
for /r . %%f in (*.wav) do (
ECHO Converting %%f . . .
"C:\Program Files\Verint\Playback\CommandLineConvertor.exe" "%CD%\%%~nxf" "%CD%\converted\%%~nxf"
)
echo All files have been converted
或者,如果要显示整个路径,只需回显您使用的第一个参数,如下所示:
for /r . %%f in (*.wav) do (
ECHO Converting "%CD%\%%~nxf" . . .
"C:\Program Files\Verint\Playback\CommandLineConvertor.exe" "%CD%\%%~nxf" "%CD%\converted\%%~nxf"
)
echo All files have been converted
修改强>
如果我完全阅读你的要求会有所帮助。您可以增加这样的数字:
在setlocal ENABLEDELAYEDEXPANSION
之后添加@ECHO OFF
以启用变量的延迟扩展。然后,在循环之前,初始化变量:
SET /a x=0
然后在你的循环中,增加变量和ECHO它,给你:
@echo off
setlocal ENABLEDELAYEDEXPANSION
color Fc
echo Remember to put this program and the audio files to convert into the same folder!!!!!
pause
if not exist converted MD converted
SET /a x=0
for /r . %%f in (*.wav) do (
SET /a x=x+1
ECHO Converting file !x! . . .
"C:\Program Files\Verint\Playback\CommandLineConvertor.exe" "%CD%\%%~nxf" "%CD%\converted\%%~nxf"
)
echo All files have been converted
pause
end