背景
之前使用 docker 和 k8s 时,创建了很多容器。后来这些容器没有被使用,停止了也没有删除。
如果一个一个的删除太麻烦,所以写个 shell 命令来实现。
分析过程
step 1. 找出要删除容器
sudo docker ps -a | grep Exited
docker ps -a
列出本机上的所有容器
step 2. 分离出容器 ID
通过 docker ps -a
命令可以看到,第一列就是这个容器的唯一ID
awk '{print $1}' $file_name
- 通过
awk
命令获取第一列数据,即为容器ID
step 3. 执行删除命令
docker rm $container_id
最终命令
借助 xargs
命令, xargs
是给其他命令传递参数用的
sudo docker ps -a | grep Exited | awk {'print $1'} | xargs sudo docker rm
执行效果: