如何查看Docker容器列表中COMMAND列的完整命令?附--format最简用法
解决Docker容器COMMAND列截断及--format选项的简单用法
嘿,这个问题我太熟悉了!每次用docker container ls看到COMMAND列被截断成"/bin/sh -c 'exec po…"这种,想完整看命令真的头疼,给你分享几个实用的解决办法:
1. 直接显示完整COMMAND列:用--no-trunc参数
这是最省事的办法,只需要在原命令后加上--no-trunc,就能让所有列的内容都不被截断,COMMAND自然就显示完整了:
sudo docker container ls --no-trunc
执行后你会看到COMMAND列不再有省略号,完整的启动命令会全部展示出来——比如原本截断的"/bin/sh -c 'exec po…"会变成"/bin/sh -c 'exec postgres -c config_file=/etc/postgresql/postgresql.conf'"。
2. 用--format自定义输出(最简单即插即用方式)
如果不想看默认的所有列,只想针对性展示容器ID、名称和完整COMMAND,--format可以帮你灵活自定义输出格式,最简单的用法分两种:
保持表格格式输出
如果你习惯表格的清晰排版,用table关键字搭配Docker内置的模板变量,就能生成自定义表格(记得加上--no-trunc保证COMMAND完整):
sudo docker container ls --no-trunc --format "table {{.ID}}\t{{.Names}}\t{{.Command}}"
这里的{{.ID}}、{{.Names}}、{{.Command}}分别对应容器ID、容器名称和完整启动命令,你还可以按需添加{{.Status}}(容器状态)、{{.CreatedAt}}(创建时间)等变量。
纯文本自定义分隔输出
如果不需要表格,只想用分隔符(比如竖线)拼接信息,去掉table关键字就行:
sudo docker container ls --no-trunc --format "{{.ID}} | {{.Names}} | {{.Command}}"
内容的提问来源于stack exchange,提问作者Peter Krauss
相关产品推荐
相关产品推荐

