rsync Include/Exclude 特定文件类型
rsync Include/Exclude specific file type
我有问题。我正在尝试使用 rsync 将所有 .php 文件从我的 /var/www 复制到另一台服务器,除了 website1 和 website2,所以我创建了这个命令:
rsync -avz -e 'ssh -p 28' --relative --exclude={'website1.com','website2.com'} --include='*.php' --delete-during --backup --backup-dir=/mnt/usb/shares/me/ubuntu_backup/ --suffix=".""201911261032" /var/www root@myserver.mydomain.nl:/mnt/usb/shares/me/ubuntu/
我想看到所有的.php文件都被同步,但是当我运行这个命令时,不仅.php文件被复制,而且还有 .jpg、.csv 等
我怎样才能使这个工作?
--include
真正的意思是 "don't exclude";一开始就隐式包含所有内容,因此 --include
用于覆盖之前的 --exclude
.
你想要
options=(
-avz
-e 'ssh -p -28'
--relative
--exclude '*' # Don't transfer *anything* ...
--include '*.php' # ... except for the .php files ...
--exclude website1.com # ... in a directory other than website1.com ...
--exclude website2.com # ... or website2.com
--delete-during
--backup
--backup-dir=/mnt/usb/shares/me/ubuntu_backup/
--suffix=".""201911261032"
)
rsync "${options[@]}" \
/var/www \
root@myserver.mydomain.nl:/mnt/usb/shares/me/ubuntu/
我有问题。我正在尝试使用 rsync 将所有 .php 文件从我的 /var/www 复制到另一台服务器,除了 website1 和 website2,所以我创建了这个命令:
rsync -avz -e 'ssh -p 28' --relative --exclude={'website1.com','website2.com'} --include='*.php' --delete-during --backup --backup-dir=/mnt/usb/shares/me/ubuntu_backup/ --suffix=".""201911261032" /var/www root@myserver.mydomain.nl:/mnt/usb/shares/me/ubuntu/
我想看到所有的.php文件都被同步,但是当我运行这个命令时,不仅.php文件被复制,而且还有 .jpg、.csv 等
我怎样才能使这个工作?
--include
真正的意思是 "don't exclude";一开始就隐式包含所有内容,因此 --include
用于覆盖之前的 --exclude
.
你想要
options=(
-avz
-e 'ssh -p -28'
--relative
--exclude '*' # Don't transfer *anything* ...
--include '*.php' # ... except for the .php files ...
--exclude website1.com # ... in a directory other than website1.com ...
--exclude website2.com # ... or website2.com
--delete-during
--backup
--backup-dir=/mnt/usb/shares/me/ubuntu_backup/
--suffix=".""201911261032"
)
rsync "${options[@]}" \
/var/www \
root@myserver.mydomain.nl:/mnt/usb/shares/me/ubuntu/