当提供空列表时,是否有一个标志可以使 docker 静音



当在一个遵循以下模式的 docker 命令中运行多个 docker 命令时,这样的功能很有用:

docker do_smth $(docker query_smth)

例如:

docker stop $(docker ps -q)

docker rm $(docker ps -a -q)

docker network rm $(docker inspect ... --format ...)

如果内部 docker 命令返回空列表,则外部命令将失败,因为 将显示帮助。

"docker stop" requires at least 1 argument.
See 'docker stop --help'.
Usage:  docker stop [OPTIONS] CONTAINER [CONTAINER...] [flags]
Stop one or more running containers

有没有办法让 docker 静音或让 docker 不在空列表上抱怨?比如:"杀了所有人。如果没有人,工作就完成了。

这类似于mkdir -p exiting_directorymkdir exiting_directory,如果目录存在,前者不会抱怨。

对于结果可能为空的脚本,我更喜欢使用 xargs --no-run-if-empty

docker ps -aq | xargs --no-run-if-empty docker rm

相关内容

最新更新