[英]aws cli s3 sync, exclude not working
我正在嘗試使用排除選項將數據從 ec2 同步到 s3 存儲桶
root@ir:ls /data/
f1 f2 f3
root@ir:aws s3 sync /data/ s3://data/ --profile s3to --exclude "/data/f1/*"
root@ir:aws s3 sync /data/ s3://data/ --profile s3to --exclude "/data/f1/"
root@ir:aws s3 sync /data/ s3://data/ --profile s3to --exclude "/data/f1*"
root@ir:aws s3 sync /data/ s3://data/ --profile s3to --exclude "f1/*"
root@ir:aws --version
aws-cli/1.9.15 Python/2.7.6 Linux/3.13.0-48-generic botocore/1.3.15
但是以上選項都不起作用,f1 繼續同步到 S3 存儲桶。
你能試一下嗎
aws s3 sync /data/ s3://data/ --profile s3to --exclude "*f1/*"
這有效:
aws s3 sync /home/ec2-user/folder s3://my-bucket --exclude "f1/*"
例:
$ ls -l
total 12
drwxrwxr-x 2 ec2-user ec2-user 4096 Apr 23 00:42 f1
drwxrwxr-x 2 ec2-user ec2-user 4096 Apr 23 00:42 f2
drwxrwxr-x 2 ec2-user ec2-user 4096 Apr 23 00:42 f3
$ aws s3 sync /home/ec2-user/folder s3://my-bucket --exclude "f1/*"
upload: f2/foo to s3://my-bucket/f2/foo
upload: f3/foo to s3://my-bucket/f3/foo
如果文件已經存在,您可能需要--delete
。
沒有一個答案明確說明為什么--exclude
參數似乎不起作用。
--exclude
使用同步目錄的相對路徑。
例如,以下失敗,因為sync
命令正在同步/data/
目錄,並且--exclude
參數是絕對路徑。
aws s3 sync /data/ s3://data/ --exclude "/data/f1/*"
解決方案是使用從同步文件夾到使用--exclude
參數排除的文件夾的相對路徑:
aws s3 sync /data/ s3://data/ --exclude "f1/*"
Fails: --exclude "/data/f1/*"
Succeeds: --exclude "f1/*"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.