我在Amazon S3中有两个存储桶bucket1
和bucket2
。
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
。
答案 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个目录,则必须遍历所有目录以确保它们均不符合您提供的模式。
这可能需要几分钟的时间(取决于您尝试过滤的目录的数量)才能查看反馈,直到您提供的模式直到以后才得到处理。