rsync-从包含的目录中排除特定文件

rsync-从包含的目录中排除特定文件

我有这个脚本:

#!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

注意::过滤规则的顺序(例如:包括、排除)很重要。

相关内容