在 Bash 中检查 docker 实例

Mer*_*cer 1 awk docker

拥有 docker ps -a

我想匹配NAMES VERSIONSTATUS

docker ps -a --format "{{.Image}}\t{{.Status}}" | awk -F$"\t" '{printf "%s|%s\n", $1, $2}'
Run Code Online (Sandbox Code Playgroud)

输出:

registry.com/project/glass/glass_front:2.2.15.4|Up 6 days
registry.com/project/glass/glass_proxy:2.2.15.4|Up 6 days
registry.com/project/glass/glass_modeles_front:2.1.5.2|Up 6 days
Run Code Online (Sandbox Code Playgroud)

我怎样才能修改我的命令来做到这一点:

glass_front | 2.2.15.4 | Up 6 days
glass_proxy | 2.2.15.4 | Up 6 days
glass_modeles_front| 2.1.5.2 | Up 6 days
Run Code Online (Sandbox Code Playgroud)

gle*_*man 5

尝试在 docker ps 命令中使用冒号作为分隔符,然后使用 sed 将冒号转换为管道并删除前缀:

docker ps -a --format "{{.Image}}:{{.Status}}" \
| sed -e 's/:/ | /g' -e 's,^.*/,,'
Run Code Online (Sandbox Code Playgroud)