docker 批量启动容器

主要命令

命令 含义
awk 文本行处理器
tail 显示文件的最后几行。

启动全部容器

命令

docker start $(docker ps -a | awk '{ print $1 }' | tail -n +2)

解释

命令 含义
docker ps -a 列出所有docker容器
awk ‘{ print $1 }’ 以空格分隔字符并输出第一个 字符串
tail -n +2 读取从第二行到最后一行

启动指定容器

容器名包含某个字符串 命令

docker start $(docker ps -a | awk '{ if($NF ~ "test") { print $NF } }' )

解释

命令 含义
docker ps -a 列出所有docker容器
awk 以空格分隔字符
if( $NF ~ “test” ) { print $NF } 如果容器名包含test 输出容器名

容器名以某个字符串开头 命令

docker start $(docker ps -a | awk '$NF~/^test*/ { print $NF }' )

解释

命令 含义
docker ps -a 列出所有docker容器
awk 以空格分隔字符
'$NF~/^test*/ { print $NF } 如果容器名以test开头 输出容器名

/^test*/ 为正则表达式,你可以自己自定义正则表达式

你可能感兴趣的:(运维,docker,linux)