我想做一个执行以下操作的脚本:
- COPY 从“D:\”到“F:\”的所有文件夹和所有文件,但
- 跳过包含“skipthisfolder.txt”文件的所有文件夹
我应该使用哪种脚本语言?(为了在 Windows 中轻松运行,无需任何第三方软件?)我想到了 .BAT 或 VBS。
我想做一个执行以下操作的脚本:
我应该使用哪种脚本语言?(为了在 Windows 中轻松运行,无需任何第三方软件?)我想到了 .BAT 或 VBS。
您可以使用 CMD 批处理文件,如下所示:
@echo off
for /r D:\ %%a in (.) do (
IF NOT EXIST "%%~fa\skipthisfolder.txt" XCOPY "%%~fa" "F:%%~pna"
)
编辑:如果您还需要在skipthisfolder.txt
找到文件时跳过子文件夹,那么这可能是一个解决方案:
@setlocal enableextensions enabledelayedexpansion
@echo off
set skip=@
for /r D:\ %%a in (.) do (
echo %%a | findstr /c:"!skip!" > nul
if !errorlevel!==1 IF EXIST "%%~fa\skipthisfolder.txt" set skip=%%~dpna
echo %%a | findstr /c:"!skip!" > nul
if !errorlevel!==1 XCOPY /D "%%~fa" "F:%%~pna"
)
endlocal