docker批量操作
来源:2-5 命令行小技巧之批量操作

悟亦凡
2021-10-21
docker container stop $(docker container ps -aq)是停止所有容器吧,如果只批量停止容器中的部分而不是全停呢,命令又如何写
写回答
1回答
-
麦兜搞IT
2021-10-22
您好,如果有特殊的过滤条件,那可以通过过滤的命令先过滤。windows我不熟悉,但是Linux我们可以使用grep和awk过滤出来所有我们想停掉的container id。
如果您不太熟悉grep和awk命令,可以去网上找找教程,这两个是Linux的基本命令,和Docker没有关系。
举个例子,下面是停掉所有容器名字包含test这几个字符的容器
如果你熟悉xargs命令,那就更方便了
➜ ~ docker container ls -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 81479e432a82 flask-demo "flask run -h 0.0.0.0" 14 minutes ago Exited (137) About a minute ago demo e84802ace447 flask-demo "flask run -h 0.0.0.0" 14 minutes ago Exited (137) 12 minutes ago test1 246a522db6a8 flask-demo "flask run -h 0.0.0.0" 14 minutes ago Exited (137) 12 minutes ago test ➜ ~ docker container ls -a | grep test | awk '{print $1}' e84802ace447 246a522db6a8 ➜ ~ docker container ls -a | grep test | awk '{print $1}' | xargs docker container rm e84802ace447 246a522db6a8 ➜ ~ docker container ls -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 81479e432a82 flask-demo "flask run -h 0.0.0.0" 15 minutes ago Exited (137) About a minute ago demo ➜ ~
这些都是Linux shell常用命令 grep,awk,xargs
022021-10-28
相似问题