如何使用AWS命令行在保留目录结构的同时复制文件

nev*_*int 2 unix linux rsync amazon-s3 amazon-web-services

我的本地计算机上有以下目录:

dir1
  |
  |__ randomfile.jpg
  |__ dir2
        |
        |__ file1.txt
        |__ file2.txt
        |__ pict.png
Run Code Online (Sandbox Code Playgroud)

我想要做的是将所有文件复制*.txt并保留子目录结构到Amazon S3存储桶。我怎样才能做到这一点?

在S3中结束。我们想找到这个文件和目录结构:

 dir1
      |
      |__ dir2
            |
            |__ file1.txt
            |__ file2.txt
Run Code Online (Sandbox Code Playgroud)

使用标准的Unix命令,我可以这样做:

find . -name '*.txt' -exec cp --parents \{\} /target \;
Run Code Online (Sandbox Code Playgroud)

但不确定如何使用AWS命令行。

实际上,要传输的文件大小约为10Tb。

Ôre*_*rel 5

只需使用同步:

aws s3 sync src/ s3://mybucket --exclude "*" --include "*.txt"
Run Code Online (Sandbox Code Playgroud)

排除包含文件

  • 作为 `sync`(用于重复同步)的替代方案,您可以使用 `aws s3 cp --recursive ...` 来完成相同的工作。 (2认同)