大家好,刚刚运行了以下代码脚本,在目录中搜索包含字符串“ABC”的文件,并将它们移动到最后的目录。
for /f "eol=: delims=" %%F in ('dir /b^|find "ABC"') do move /Y "%%F" "C:\DESTINATION_DIRECTORY"
想知道如何将其修改为不必从输入目录运行,即添加 SOURCE_DIRECTORY 变量,以便我可以从其他地方运行此脚本,但是要通过解析source_directory中
感谢您的帮助。
答案 0 :(得分:1)
@echo off
set "root=c:\st"
pushd %root% && (
for %%# in ("*ABC*") do echo move /Y "%%~f#" "C:\DESTINATION_DIRECTORY"
)
popd
或
for /f "tokens=* delims=" %%# in ('dir /b "%root%\*ABC*"') do echo move /Y "%root%\%%~nx#" "C:\DESTINATION_DIRECTORY"
用于递归搜索:
for /f "tokens=* delims=" %%# in ('dir /b /s "%root%\*ABC*"') do echo move /Y "%%~f#" "C:\DESTINATION_DIRECTORY"