如何使用AWS CLI按降序获取S3文件夹下的前缀列表?
使用AWS CLI获取S3指定前缀下的子前缀并降序排列
直接用以下组合命令就能实现需求:
aws s3 ls s3://main_bucket/fold1/ --delimiter "/" | grep -E "PRE " | awk '{print $2}' | sort -r
各部分作用说明:
aws s3 ls s3://main_bucket/fold1/ --delimiter "/":列出fold1路径下的所有子文件夹前缀,--delimiter "/"会将子文件夹识别为独立前缀,输出行格式为PRE fold001/grep -E "PRE ":过滤掉非前缀的行,只保留子文件夹相关记录awk '{print $2}':提取每行里的前缀名称(比如fold001/)sort -r:对提取出的前缀进行降序排序
如果不需要前缀末尾的斜杠,可以在命令里加一步删除斜杠的处理:
aws s3 ls s3://main_bucket/fold1/ --delimiter "/" | grep -E "PRE " | awk '{print $2}' | sed 's/\/$//' | sort -r
执行后就能得到fold003、fold002、fold001这样的降序列表。
内容的提问来源于stack exchange,提问作者Santhosh
相关产品推荐
相关产品推荐

