Mac机器上的当前项目目录,包含一些文件和目录,需要复制到aws s3存储桶,但没有一些目录,其中一些是隐藏的。
我无法从the docs弄清楚如何做到这一点,因此我的猜测是:
aws> s3 cp . s3://bucketName --recursive --exclude "how to put the list of directories to exclude here"?
由于
答案 0 :(得分:1)
Amazon S3并不真正支持目录。相反,目录的名称("路径")预先写在文件的名称上。
所以,想象一下这个结构:
$file = c:\temp\temp.rnd
$stream = System.IO.StreamWriter $file
$longstring = 'whatever'
$stream.Write($longstring)
如果您希望复制整个docs
+ foo
+ bar
+ foobar
目录,但跳过docs
目录,请在bar
目录中使用此命令:
docs
这告诉它复制所有文件,除以aws s3 cp . s3://mybucket --recursive --exclude 'bar/*'
开头的文件。
答案 1 :(得分:0)
可以将任意数量的这些参数传递给命令。你可以做 这通过多次提供--exclude或--include参数, 例如--include“ .txt” - 包含“ .png”。当有多个 过滤器,规则是稍后在命令中出现的过滤器 优先于命令中较早出现的过滤器。
因此,只需为要跳过的每个目录指定一个--exclude
选项。