0

我目前正在使用 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构造,因为一致会忽略所有以点开头的名称。

不幸的是,当我运行批处理文件时,统一在此处引发错误:

未捕获的异常 Sys_error("C:\Users\name\.unison\*.tmp)

然后它抱怨目录名称的语法错误。显然,unison 是在读取 ignore 语句并在 .unison 目录中寻找一个名称为要被忽略的文件夹的文件。

我想不出解决办法。手册中的所有信息(https://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html)在我没有使用的统一配置文件中设置了忽略路径。

仅使用命令行选项时如何统一忽略某些目录?

4

1 回答 1

0

我认为你的语法是错误的。尝试

-ignore 'Name {*.*.tmp}'

来自Unison 手册

如果您愿意,也可以在命令行上指定忽略模式(这可能不是很有用),使用 -ignore 'Name temp.txt' 之类的选项。

于 2021-12-30T23:17:13.497 回答