[英]duplicity --exclude option doesn't exclude the mentioned dir
#!/bin/bash
datetime="`date +%Y%m%d`";
export AWS_ACCESS_KEY_ID="MYKEY"
export AWS_SECRET_ACCESS_KEY="MYSECRET"
export BACKUP_DEST_FILES="s3://s3.eu-central-1.amazonaws.com/mybucket"
cd /var/www/
dirs=($(find * -maxdepth 0 -type d))
for dir in "${dirs[@]}"; do
cd $dir
subdirs=($(find * -maxdepth 0 -type d))
for subdir in "${subdirs[@]}"; do
duplicity full --exclude "**logs/**" --exclude "**backups/**" --no-encryption $subdir $BACKUP_DEST_FILES/$dir/$datetime/$subdir
done
cd ../
done
此代碼應該備份/ var / www /下的每個directtory和子目錄,但“logs”和“backups”dirs除外。
雖然它與下面的rsync命令完美配合:
rsync -ar --exclude='backup' --exclude='log' --exclude='logs' --exclude='backups' $subdir backups/$datetime/
..it不適用於下面的duplicity命令。 它只是備份所有內容而不排除。
duplicity full --exclude "**logs/**" --exclude "**backups/**" --no-encryption $subdir $BACKUP_DEST_FILES/$dir/$datetime/$subdir
我在這里錯過了什么?
好的我在subdirs=($(find * -maxdepth 0 ! -path /path/to/exclude -type d))
點中排除了不必要的目錄。 因此在雙重處理之前的步驟中排除目錄。
謝謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.