我在许多服务中使用 Docker,命令
docker ps
对我来说至关重要,但我讨厌冗长而广泛的输出。
例如在此服务器中:
[root@server docker-postgres]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
020ec906a5ed bitnami/pgpool:4 "/opt/bitnami/script…" 2 weeks ago Up 2 weeks (healthy) pgpool
d40dd0f76e19 postgres_img "docker-entrypoint.s…" 2 weeks ago Up 19 hours postgres
运行时我唯一看到的东西
docker ps
是这些:
pgpool Up 2 weeks (healthy)
postgres Up 19 hours
我能够运行此命令获得该输出:
docker ps | awk -F '[[:space:]][[:space:]]+' '{print $6,$5}' | column -t --table-right 2,3,4
但是该命令非常大,我尝试像这样设置别名:
alias dps="docker ps | awk -F '[[:space:]][[:space:]]+' '{print $6,$5}' | column -t --table-right 2,3,4"
但是运行别名我得到这个结果:
[root@server docker-postgres]# dps
awk: cmd. line:1: {print ,}
awk: cmd. line:1: ^ syntax error
awk: cmd. line:1: {print ,}
awk: cmd. line:1: ^ syntax error
awk: cmd. line:1: {print ,}
awk: cmd. line:1: ^ unexpected newline or end of string
我不知道发生了什么,我尝试更改别名行中的几项内容,但没有成功...
感谢@pmf的建议,这就是我正在寻找的:
alias dps="docker container ls --format 'table {{.Names}}\t{{.Status}}'"
它给了我这个结果:
NAMES STATUS
pgpool Up 2 weeks (healthy)
postgres Up 19 hours