我正在尝试获取docker images
命令输出以在网页上显示它。
正如您在图像上看到的那样,格式正确。
但我在网页上得到的是一行根本未格式化的内容;
存储标签图像ID创建大小nginx最新3448f27c273f 2天 前109.4 MB mysql最新的e799c7f9ae9c 3天前407.3 MB
此刻我的剧本;
docker_images=$(docker images)
echo $docker_images
如何通过回声获得格式良好的输出?
答案 0 :(得分:1)
这与shell在打印带有和不带双引号的变量时如何处理换行符,空格,制表符等有关。要获得所需的输出,请替换
echo $docker_images
与
echo "$docker_images"
请参阅Capturing multiple line output into a Bash variable以获取更详细的说明。
答案 1 :(得分:0)
所以我尝试了echo nl2br($output)
给了我这个;
这有点好但仍然没有很好的格式化。任何想法如何改善这个?
编辑:
现在正在运行,我正在获得我想要的输出。我必须这样做;
echo "<pre>";
echo nl2br($output) or $output;
echo "</pre>";
嗯,这是纯文本。如果有人想操纵这些,你可以使用docker API。 https://docs.docker.com/engine/api/v1.24/