我正在尝试将命令输出的第二行的第一个单词存储为变量
我试图将整个东西放在()的前面并加上一个$,但它不起作用
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}')