用bash脚本获取docker images命令的输出
我试图让docker images
命令输出显示在网页上。
例如: Docker镜像输出
正如你在图像上看到的,这是格式良好的。
但是,我在我的网页上得到的是一行没有格式化的行;
REPOSITORY TAG IMAGE ID CREATED SIZE nginx latest 3448f27c273f 2天前109.4 MB mysql最新e799c7f9ae9c 3天前407.3 MB
这是我的脚本;
docker_images=$(docker images) echo $docker_images
我怎样才能得到良好的格式化输出通过我的回声?
这与在使用和不使用双引号打印variables时shell如何处理换行符,空格,制表符等有关。 要获得所需的输出,请更换
echo $docker_images
同
echo "$docker_images"
请参阅将多行输出捕获到Bashvariables以获取更详细的解释。
所以我尝试了echo nl2br($output)
给了我这个;
HTML输出
这个好一点,但是格式不好。 任何想法如何改善这一点?
编辑:
这正在工作,我正在得到我想要的输出。 我必须这样做,
echo "<pre>"; echo nl2br($output) or $output; echo "</pre>";
那是纯文本的。 如果有人想操纵这些,你可以使用docker API。 https://docs.docker.com/engine/api/v1.24/