Rsync:有什么办法可以很快排除多个文件和目录?

Lua*_*ham 3 linux rsync

有没有办法用rsync很快排除多个文件和目录?

下面是我的代码:

rsync -avzh . blabla@blabla:~/ --exclude=__pycache__ --exclude=checkpoints --exclude=logs --exclude=.git --exclude=plot
Run Code Online (Sandbox Code Playgroud)

我必须为每个文件(目录)明确声明。我觉得太长了。

roa*_*ima 7

rsync(请参阅man rsync)的文档具有--exclude-from允许您在文件中指定排除列表的参数。

关于您的一组示例排除项,应遵循目录/以显示它们是目录而不是未指定的文件或目录,并且仅在您的主目录本身中的那些应以 为前缀,/以便它们与其他任何地方都不匹配.

在排除文件中,它们可以像这样列出

# Directories found anywhere
__pycache__/
checkpoints/
logs/
plot/

# Directories found only in HOME
/.git/
Run Code Online (Sandbox Code Playgroud)