我正在使用批处理脚本中的 robocopy 将所有文件备份到外部驱动器上,但我想排除任何包含(直接)名为“.nosync”的文件的文件夹,这样我就可以避免备份包含不需要备份的 GB 数据的几个文件夹。但我不知道该怎么做。
我试过:
robocopy <source> <dest> /mir /xd ".nosync\.."
但 robocopy 似乎不遵循相对路径。有没有办法做到这一点,或者我可以使用其他实用程序将更改的文件镜像到另一个驱动器?
答案1
我测试了这个并且它对我有用:
@echo off
echo.
set /p "Source=Please specify the source folder: "
echo.
set /p "Destination=Please specify the destination folder: "
echo.
set "Source=%Source:"=%"
set "Destination=%Destination:"=%"
pushd "%Source%"
for /f "delims=" %%a in ('dir /b /s /a ^|find /i ".nosync"') do echo %%~dpa>>"%~dp0nocopy.txt"
popd
xcopy "%Source%" "%Destination%" /e /h /r /exclude:nocopy.txt
del /q nocopy.txt