Date
僅從 s3 儲存中複製特定日期的文件
我只想從包含 100 個文件的某個儲存桶中複製來自今天的 S3 文件。我嘗試了以下方法:
$ aws s3 ls s3://cve-etherwan/ --recursive --region=us-west-2 | grep 2018-11-06 | awk '{system("aws s3 sync s3://cve-etherwan/$4 . --region=us-west-2") }'
但效果不佳,我還從其他日期獲取文件。我該如何正確地做到這一點?
那是因為在
aws s3
您使用sync
. 試試cp
吧。您也可以將“grep”和“awk”合併在一起。$ aws s3 ls s3://cve-etherwan/ --recursive | awk '/^2018-11-06/{system("aws s3 cp s3://cve-etherwan/$4 .") }'
這對我有用
- 添加了時間限制,這裡我選擇 12/12/19 的 8:00 到 8:30
- 略微修改了 awk 部分,刪除了錯字
- 而不是從 awk 呼叫
system
n次,而是創建一個文本輸出並通過 bash 進行管道傳輸是的,小心管道進入 bash :-)
aws s3 ls --recursive s3://cve-etherwan/ | awk '/^2019-12-12 08:[0-3]/{ print "aws s3 cp s3://cve-etherwan/"$4" ."}' | bash