我有这个脚本:
#!bin/bash
AMB="specific_dir*/***"
SRC="/path/to/dir/"
DST_1="user@host1:~/path/to/dest/"
DST_2="virkantas@host2:~/path/to/dest/"
DST_3="nodbaltic@host3:~/path/to/dest/"
for DEST in $DST_1 $DST_2 $DST_3; do
rsync -av --include=$AMB --exclude='*' $SRC $DEST
done
它同步名称以“specific_dir”开头的目录及其中的所有内容,但排除SRC
目录中的所有其他目录。这很好,但我还想排除.pyc
这些specific_dir
目录中的文件。
我如何指定从包含的目录中排除什么(或者只是如何排除.pyc
文件,但保持排除其他每个目录的规则)?
答案1
尝试
rsync -av --exclude='specific_dir*/***.pyc' --include='specific_dir*/***' --exclude='*' $SRC $DEST
注意::过滤规则的顺序(例如:包括、排除)很重要。