
我使用 robocopy 來備份檔案。因為我需要排除一些目錄,所以我先測試了以下開關:
/xd 目錄 t*
它成功排除了名稱以 t 開頭的所有目錄。但這並不是我真正想要的。我真正想要的是排除名稱以thunderbird\cache開頭的目錄,例如thunderbird\cache、thunderbird\cache2等。
/xd 目錄 Thunderbird\cache*
然而,robocopy 抱怨它,說“錯誤:無效參數#7:“thunderbird\cache*””。
在路徑中使用通配符的語法是什麼?
答案1
該/XD
選項的robocopy
命令\
只要給定值中沒有路徑分隔符,似乎就接受通配符;所以cache*
被接受,但thunderbird\cache*
不被接受。
您可以在批次檔中使用以下程式碼來解決此問題:
set "DIRS= "
for /D %%I in ("thunderbird\cache*") do call set "DIRS=%%DIRS%%"%%~I" "
robocopy "D:\source" "D:\destination" *.* /XD %DIRS%