Rob*_*Rob 33 linux rsync command-line
我使用 rsync 在多台机器上同步文件,使用以下内容:
rsync -az -e "ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" \
--delete --delete-excluded --force --exclude=.git --exclude=.bundle \
--exclude=tmp --exclude=log/* --exclude=*.log --exclude=*.pid \
user@host:/path/to/src/ /var/build/dest
Run Code Online (Sandbox Code Playgroud)
我想排除所有日志文件从源传输到目标,并删除目标上的所有现有文件。所以我使用--exclude=*.log与--delete-excluded它的伟大工程。
但我想在目标上保持某个日志文件完好无损。我想要一个--exclude-from-delete选项。
rsync 可以实现吗?
kon*_*iik 51
“保护”过滤器应该完成你想要的:
protect, P specifies a pattern for protecting files from deletion.
Run Code Online (Sandbox Code Playgroud)
只需在相关排除之前指定以下过滤器:
--filter='P my-specific-logfile.log'
Run Code Online (Sandbox Code Playgroud)
(注意字母 P 后面的空格。)