[英]how to iterate bash script to run command?
我试图在几年内将多个文件夹从一个 s3 存储桶复制到另一个存储桶
aws s3 sync s3://bucket_one/2022XX s3://bucket_two/2022XX (XX is 01 to 12)
我在bucket_one
下有文件夹,例如 202201、202202 等等,其他年份也是如此。
我可以创建任何运行数月或数年的 shell 脚本来将数据复制到bucket_two
吗?
我是 shell 脚本的新手,我知道如何运行循环,但不确定使用占位符。
有什么帮助吗?
您可以使用for
循环和变量替换(也称为参数扩展)来做到这一点。 您可以在此处的官方手册中阅读更多相关信息,但我个人觉得阅读这样的内容更容易。
无论如何,对于您的具体情况,您可以尝试这样的事情:
for month in {01..12}; do
aws s3 sync s3://bucket_one/2022$month s3://bucket_two/2022$month
done
如果某些东西不起作用,要进行调试,您可以echo
显命令。 前任:
for month in {01..12}; do
echo "aws s3 sync s3://bucket_one/2022$month s3://bucket_two/2022$month"
done
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.