如何获取除最新创建的Docker镜像外的所有镜像ID
筛选除最新test镜像外的所有镜像ID
要搞定这个需求,咱们可以借助docker images的默认排序特性(最新创建的镜像默认排在最顶部),再搭配文本处理工具精准提取目标镜像ID,具体方案如下:
核心执行命令
直接运行这条命令就能得到你想要的结果:
docker images --filter=reference="*test-*" --format 'table {{.Repository}}\t{{.CreatedAt}}\t{{.ID}}' | awk -F '\t' 'NR>2 {print $3}'
命令细节拆解
docker images段:就是你原本用来筛选*test-*类镜像、并指定输出格式的命令,会生成包含仓库名、创建时间、镜像ID的规整表格。awk处理段:-F '\t'指定制表符作为列分隔符,避免创建时间里的空格干扰列的识别;NR>2表示跳过前两行(第一行是表头,第二行是最新创建的那条镜像记录);print $3提取并打印第三列,也就是咱们需要的镜像ID内容。
效果验证
用你提供的测试输出运行这条命令,会得到:
d6a3377f609a 992aef1d798f 132bc17ea5cb 9dfa73010b19
完全匹配你的需求~
内容的提问来源于stack exchange,提问作者basickarl
相关产品推荐
相关产品推荐

