批处理文件搜索子目录

时间:2014-01-29 12:35:03

标签: windows batch-file windows-shell

我有一个脚本我试图改变以搜索给定路径中的多个子目录,然后将找到的文件复制到位置创建文件夹,文件夹文件中的复制文件从中运行。目前脚本可以工作,但搜索子目录,我如何更改下面的脚本。

@echo off
set LIST= C:\batch\list.txt
set FILESPATH="C:\Test"
for %%i in ("%LIST%") do set DEST=%%~ni
for /F "usebackq delims==" %%i in (%LIST%) do (call :COPY_FILES "%%i")
:COPY_FILES
xcopy /qv %FILESPATH%\%1 .\%DEST%\*

我试图改变这一行

for / F“usebackq delims =”%% i in('dir / s / b“%LIST%”')do(call:COPY_FILES“%% i”),但得到文件列表的错误。无法找到txt。

谢谢

1 个答案:

答案 0 :(得分:0)

测试:它只会将xcopy行打印到控制台。

如果看起来正确,则从xcopy行中删除echo并将其运行为真实。

如果命令不正确,则提供线条样本以查看哪个部分是错误的。

@echo off
set "LIST=C:\batch\list.txt"
set "FILESPATH=C:\Test"
for /F "usebackq delims=" %%i in ("%LIST%") do (
    echo xcopy /s/h/k/f/c/q/v "%FILESPATH%\%%i" "%%~ni\"
)
pause