gpt4 book ai didi

linux - 如何存储已经通过管道的命令的输出

转载 作者:太空宇宙 更新时间:2023-11-04 04:42:44 25 4
gpt4 key购买 nike

我正在尝试将命令输出的第二行的第一个单词存储为变量

我尝试将整个内容放入 () 中,前面有一个 $,但不起作用

containerID= docker ps | awk 'END { print }' | { read first rest ; echo $first ; }

echo $containerID
echo $containerID

我预计它会吐回containerID变量两次,但它只吐回一次。在故障排除中,我发现“echo $first”是它输出任何内容的原因。这意味着它没有在 containerID 变量中存储任何内容,为什么?

最佳答案

使用$(...)捕获命令的输出。不要在等号两边添加任何空格。

containerID=$(docker ps | awk 'END { print }' | { read first rest ; echo $first ; })

更简单:

containerID=$(docker ps | awk 'END {print $1}')

关于linux - 如何存储已经通过管道的命令的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56763684/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com