不要使用默认输出,只需从一开始就准确打印您要查找的内容即可。大多数 docker 子命令接受--format
选项将需要去模板 https://pkg.go.dev/text/template表达式来指定您确切想要的内容。
就您而言,我相信以下命令应该给出您正在寻找的内容:
$ docker container ls -la --format "{{.Names}}"
recursing_liskov
当然,如果您愿意,您可以按照最适合您需求的顺序添加更多列。您可以轻松获取所有可用键的列表,例如:
$ docker container ls -la --format "{{json .}}" | jq
{
"Command": "\"tail -f /dev/null\"",
"CreatedAt": "2022-01-15 23:43:54 +0100 CET",
"ID": "a67f0c2b1769",
"Image": "busybox",
"Labels": "",
"LocalVolumes": "0",
"Mounts": "",
"Names": "recursing_liskov",
"Networks": "bridge",
"Ports": "",
"RunningFor": "20 minutes ago",
"Size": "0B (virtual 1.24MB)",
"State": "running",
"Status": "Up 20 minutes"
}
下面是一个示例,仅用于说明某些字段的使用:
$ docker container ls -la --format "container {{.Names}} is in state {{.State}} and has ID {{.ID}}"
container recursing_liskov is in state running and has ID a67f0c2b1769
我使用的一些随机参考:
- https://devcoops.com/filter-output-of-docker-image-ls/ https://devcoops.com/filter-output-of-docker-image-ls/
- https://windsock.io/customising-docker-cli-output/ https://windsock.io/customising-docker-cli-output/