无法在rsync中排除.DS_store

Léo*_* 준영 8 macos rsync

我的代码

rsync -exclude='.gitconfig' -exclude='*~' -exclude='.DS_Store' /Users/Masi/bin/ /Users/Masi/gitHub/dvorak/
Run Code Online (Sandbox Code Playgroud)

我跑了 它将.DS_Store复制到目标文件夹,尽管它不应该.

这表明我第一次排除不起作用.它似乎是用Git的默认ignore -file硬编码来忽略.gitconfig.

你怎么能避免应对.DS_Store?

Gor*_*son 22

看起来你在"--exclude"标志上错过了一个短划线.没有它,我怀疑rsync认为你传递了一个带有值"xclude = .DS_Store"的-e标志; 根本不是你想要的.


Ben*_*key 13

请尝试以下方法.将要排除的项目列表放在文件中

~/.rsync/exclude
Run Code Online (Sandbox Code Playgroud)

每行一个(可接受的通配符).

然后使用适当的选项从该文件中读取排除项:

--exclude-from=~/.rsync/exclude
Run Code Online (Sandbox Code Playgroud)

您可能还希望在姐妹网站ServerFault上询问此问题.