【发布时间】:2016-09-08 18:04:22
【问题描述】:
我想将 shell 命令的输出分配给一个变量。
如果我直接回显命令,代码会正确执行:
for ((i=0; i<${#result[@]}; i++)); do
echo ${result[$i]} | awk '{print $1}'
done
但是,如果我将它分配给一个变量,
size=`${result[$i]} | awk '{print $1}'`
echo $size
或者
size=$(${result[$i]} | awk '{print $1}')
echo $size
他们不工作。
我该如何解决?
【问题讨论】:
-
虽然这或多或少是一个拼写错误,但规范是 How do I set a variable to the output of a command in Bash?。尽管标题不明确,但它涵盖了(变量)输入到外部命令(在(Bash)变量中)的情况。