AWS:如何将多个文件从本地复制到 s3?

Ani*_*aje 10 amazon-s3 amazon-web-services aws-cli

我正在尝试将多个文件从我的本地上传到 AWS S3 存储桶,
我可以用来aws s3 cp一个一个地复制文件,
但是我需要上传多个但不是全部,即。选择性文件到同一个 S3 文件夹,
是否可以在单个 AWS CLI 调用中执行此操作,如果可以,如何执行?

例如——

aws s3 cp test.txt s3://mybucket/test.txt
Run Code Online (Sandbox Code Playgroud)

参考 -
https://docs.aws.amazon.com/cli/latest/reference/s3/cp.html

Tim*_*sen 21

如果您向下滚动提供给标题为“递归复制本地文件到 S3”部分的文档链接,您将看到以下内容:

当与参数--recursive 一起传递时,以下cp 命令将指定目录下的所有文件递归复制到指定的bucket 和前缀,同时使用--exclude 参数排除一些文件。在此示例中,目录 myDir 包含文件 test1.txt 和 test2.jpg

因此,假设您想将.txt某个子文件夹中的所有文件复制到 S3 中的同一个存储桶,您可以尝试以下操作:

aws s3 cp yourSubFolder s3://mybucket/ --recursive
Run Code Online (Sandbox Code Playgroud)

如果该子文件夹下还有其他文件,则需要添加--exclude--include参数(否则所有文件都会上传):

aws s3 cp yourSubFolder s3://mybucket/ --recursive --exclude "*" --include "*.txt"
Run Code Online (Sandbox Code Playgroud)

  • 我认为您可以将包含和排除标志与正则表达式一起使用。aws s3 cp yourSubFolder s3://mybucket/ --recursive --include "a*.txt" --include "b*.txt" --exclude="c*.txt" --exclude="d*.txt ” (2认同)