我正在学习批处理编程的来龙去脉,但遇到了一个小障碍。我正在尝试递归循环遍历目录(和子目录)以找到合适的 .vob 文件。一切都很好,除了我的dir
命令正在输出File Not Found
. 在命令行中,我可以使用以下命令将错误重定向到遗忘:
dir /b *.vob 2>NUL
然而,在批处理文件中,我看到了死亡的瞬间。
for /R %%G IN (\) DO (
pushd "%%G"
for /F "usebackq" %%V in (`dir /b *.vob`) DO (
echo: Found %%~nV in %%~dpV
)
popd
)
将其更改为
for /R %%G IN (\) DO (
pushd "%%G"
for /F "usebackq" %%V in (`dir /b *.vob 2>NUL`) DO (
echo: Found %%~nV in %%~dpV
)
popd
)
我假设我的 cmd 窗口崩溃了。闪烁开和关。
顺便说一句,调试批次很糟糕。