循环遍历目录下的所有文件并上传到s3

循环遍历目录下的所有文件并上传到s3

如何将命令应用到目录中的所有文件,例如目录中每个文件的名称在aws s3 cp [name] s3://[bucketname]哪里?[name]

答案1

我建议参考官方文档

递归复制本地文件到S3

当传递参数 时--recursive,以下cp命令将指定目录下的所有文件递归复制到指定的存储桶和前缀,同时通过参数排除部分文件--exclude。在此示例中,目录 myDir 包含文件 test1.txt 和 test2.jpg:

aws s3 cp myDir s3://mybucket/ --recursive --exclude "*.jpg"

输出:

upload: myDir/test1.txt to s3://mybucket/test1.txt

--dryrun如果您不确定效果,可以先使用。

答案2

你有没有尝试过类似的事情:

aws s3 cp /path/* s3://[bucketname]

如果你坚持让它循环,你可以尝试这个,例如:

for i in /path/*
do
aws s3 cp "$i" s3://[bucketname]
done

相关内容