[英]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.