带有--include和--exculde的aws s3 cp不会复制任何内容

时间:2018-11-04 21:46:42

标签: amazon-web-services amazon-s3

我在Amazon S3中有两个存储桶bucket1bucket2

aws s3 cp s3://bucket1 s3://bucket2  --recursive --exclude "*" --include "*am.dat"

尽管bucket1的文件与模式*am.dat匹配,但不会从bucket1复制任何文件。

aws s3 cp s3://bucket1 s3://bucket2  --recursive 

成功将所有文件复制到bucket2

2 个答案:

答案 0 :(得分:0)

对我有用! (在Mac上)

$ aws s3 mb s3://jzz1
make_bucket: jzz1

$ aws s3 mb s3://jzz2
make_bucket: jzz2

$ aws s3 cp x.json s3://jzz1/jam.dat
upload: ./x.json to s3://jzz1/jam.dat                          

$ aws s3 cp x.json s3://jzz1/gym.dat
upload: ./x.json to s3://jzz1/gym.dat                          

$ aws s3 cp s3://jzz1 s3://jzz2 --recursive --exclude "*" --include "*am.dat"
copy: s3://jzz1/jam.dat to s3://jzz2/jam.dat                   

答案 1 :(得分:0)

我注意到,当您使用--recursive和--include或--exclude运行aws s3 cp时,要花一些时间才能遍历所有目录。例如,如果您要查找的路径下有10000个目录,则必须遍历所有目录以确保它们均不符合您提供的模式。

这可能需要几分钟的时间(取决于您尝试过滤的目录的数量)才能查看反馈,直到您提供的模式直到以后才得到处理。