如何批量导航到for循环中的子文件夹?
How to navigate to subfolder in for loop in batch?
使用 cd %%~i
我想将脚本导航到 U:\testbmbf[=19=]12 之后的下一个子文件夹..... 在同一层次结构级别上有很多这样的子文件夹。然后脚本应该在同一层次结构级别的所有这些子文件夹中搜索具有 5 个以下扩展名的文件。
问题是脚本遍历整个层次结构树并搜索所有可能的子级别。
如何 "lock" 脚本以便仅在下一个层级而不是更深层次上搜索文件扩展名? CD %%i 在这里似乎不起作用。
@echo off
SETLOCAL enabledelayedexpansion
for %%i in (U:\testbmbf[=10=]12\) do (
cd %%~i
for /r %%j in (*.tif) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.txt) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.pdf) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.tei) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.xml) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.xls) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
)
你是这个意思吗?
@Echo Off
For /D %%A In (U:\testbmbf[=10=]12\*) Do (
PushD "%%A"
For %%B In (*.pdf *.tei *.tif *.txt *.xls *.xml) Do (
Echo checking md5sum %%B
U:\md5.exe "%%B">>U:\check_before.txt
)
PopD
)
使用 cd %%~i
我想将脚本导航到 U:\testbmbf[=19=]12 之后的下一个子文件夹..... 在同一层次结构级别上有很多这样的子文件夹。然后脚本应该在同一层次结构级别的所有这些子文件夹中搜索具有 5 个以下扩展名的文件。
问题是脚本遍历整个层次结构树并搜索所有可能的子级别。
如何 "lock" 脚本以便仅在下一个层级而不是更深层次上搜索文件扩展名? CD %%i 在这里似乎不起作用。
@echo off
SETLOCAL enabledelayedexpansion
for %%i in (U:\testbmbf[=10=]12\) do (
cd %%~i
for /r %%j in (*.tif) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.txt) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.pdf) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.tei) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.xml) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
for /r %%j in (*.xls) do U:\md5.exe %%j >> U:\check_before.txt && echo checking md5sum %%j
)
你是这个意思吗?
@Echo Off
For /D %%A In (U:\testbmbf[=10=]12\*) Do (
PushD "%%A"
For %%B In (*.pdf *.tei *.tif *.txt *.xls *.xml) Do (
Echo checking md5sum %%B
U:\md5.exe "%%B">>U:\check_before.txt
)
PopD
)