我遇到这样的问题;
root@B056HAP2865372:~# str="$(consul-template --version)"
consul-template v0.18.1 (9c62737)
root@B056HAP2865372:~# echo $str
root@B056HAP2865372:~# consul-template --version | cut -d" " -f 2
consul-template v0.18.1 (9c62737)
所以命令$consul-template --version
有效,但是我无法将其分配给任何变量,或者管道将其分配给其他命令。
如果它有助于此机器是LXC 2.9.3
容器。
它是一个bash shell。
我不知道我做错了什么。
答案 0 :(得分:1)
您的命令是在stderr
上写的。您可以将stderr重定向到stdout,然后分配给变量:
str="$(consul-template --version 2>&1)"