【发布时间】:2019-03-14 03:34:25
【问题描述】:
如何删除具有上次修改时间日期条件的多个 S3 文件?
我在 s3 上有这个文件夹结构。
- dentca-lab-dev-sample
- 2019-03-13
- file1 最后修改时间:2019 年 3 月 13 日下午 2:34:06 GMT-0700
- file2 最后修改时间:2019 年 3 月 13 日下午 3:18:01 GMT-0700
- file3 最后修改时间:2019 年 3 月 13 日下午 2:34:30 GMT-0700
- file4 最后修改时间:2019 年 3 月 13 日下午 2:32:40 GMT-0700
- 2019-03-13
并想删除小于Mar 13, 2019 2:34:30 PM的文件(这只是一个示例)
所以我制作了这个 bash 脚本,但它不起作用。
aws s3 ls --recursive s3://dentca-lab-dev-sample/2019-03-13/ | awk '$1 <= "2019-03-13 14:34:30" {print $4}'
** ls 仅用于测试。将其更改为rm
我也有这个脚本用于测试
aws s3 ls --recursive s3://dentca-lab-dev-sample/2019-03-13/
输出:
2019-03-13 14:34:06 11656584 2019-03-13/mandibular.stl
2019-03-13 15:18:01 11969184 2019-03-13/maxillary.stl
2019-03-13 14:34:30 9169657 2019-03-13/obj.obj
2019-03-13 14:32:40 15690284 2019-03-13/upperAIO_50005.stl
但是当我使用awk 来制作条件时不起作用。可能是因为$1 只捕捉到这个论点2019-03-13 并且我将它与2019-03-13 14:34:30 竞争
也尝试过这样做。
awk '$1 $2 <= "2019-03-13 14:34:30" {print $4}' 抓住第二个论点,但仍然一无所获。顺便说一句,这是我第一次制作 bash。
谢谢!我有这个作为参考顺便说一句。 aws cli s3 bucket remove object with date condition
【问题讨论】:
标签: bash amazon-web-services amazon-s3