批量脚本,备份所有图片和视频,但没有一个目录

时间:2017-05-09 14:41:32

标签: loops batch-file for-loop

我的脚本允许我在整台计算机上备份图片和视频。它使用"搜索文件,用于"循环,但现在我希望它跳过一些特定的目录,如" Windows"在C:\或" AppData"在用户目录中。我如何修改我的脚本以实现我的目标?

SET FileSizeMov=1073741824
SET FileSizePic=20000

for %%d in (C:\ D:\ E:\ F:\) do (
    PUSHD %%d
    for /f "delims=" %%F in ('Dir /B/S/A *.mp4 *.mov *.wmv *.avi') do if %%~zF LSS %FileSizeMov% (xcopy /h /y /c "%%F" "%~d0\allVid\")
    for /f "delims=" %%F in ('Dir /B/S/A *.jpg *.jpeg') do if %%~zF GTR %FileSizePic% (xcopy /h /y /c "%%F" "%~d0\allPic\")
    POPD
)

1 个答案:

答案 0 :(得分:0)

使用

扩展dir命令
^|findstr /i /v /g:filename

其中 filename 包含要以

格式排除的目录的名称
  

c:\目录要排除\

插入符号转义管道,以便 dir 输出重定向到findstr /g:指定字符串匹配的文件名,/i表示不区分大小写,/v表示不包括

的行

(扩展名构成了要执行的指令的一部分,所以它也应该包含在引号内)