【发布时间】:2022-01-25 18:21:44
【问题描述】:
我目前正在使用 unison 将本地文件与我的云同步。因此,我设置了一个批处理文件,其中包含我需要的所有选项。
"K:\unison\unison 2.48.4 text.exe" -batch -repeat 1200 -fastcheck true -log=false D:\localsync Z:\cloudsync
为了告诉 unison 跳过所有名为“.tmp”的文件夹,不管它们的路径如何,我想出了这个命令:
"K:\unison\unison 2.48.4 text.exe" -batch -repeat 1200 -fastcheck true -log=false -ignore=Name{*.*.tmp} D:\localsync Z:\cloudsync
建议使用 *.*.tmp 构造,因为统一会忽略所有以点开头的名称。
不幸的是,当我运行批处理文件时,unison 在此处抛出错误:
未捕获的异常 Sys_error("C:\Users\name\.unison\*.tmp)
然后它抱怨目录名称的语法错误。显然,unison 是在读取 ignore 语句,并在 .unison 目录中寻找一个名为要被忽略的文件夹的文件。
我想不出解决办法。手册 (https://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html) 中的所有信息都设置了我未使用的统一配置文件中的忽略路径。
仅使用命令行选项时如何统一忽略某些目录?
【问题讨论】:
-
抱歉来晚了,但您确定不需要将
-ignore的参数括在引号中,以防止外壳扩展通配符 (*) 吗?我不熟悉 Windows 中的 shell。
标签: command-line unison