我在 Linux shell 上有一个计算,像这样
echo "scale 4;3*2.5" |bc
这给了我一个结果,现在我想将此计算的结果通过管道传输到一个变量中,以便稍后在另一个命令中使用它,
管道到文件工作,但不是管道到变量
echo "scale=4 ; 3*2.5" | bc > test.file
所以在伪代码中我想做这样的事情
set MYVAR=echo "scale=4 ; 3*2.5" | bc ; mycommand $MYVAR
有任何想法吗?
你可以这样做(在 csh 中):
set MYVAR=`echo "scale 4;3*2.5" |bc`
或在 bash 中:
MYVAR=$(echo "scale 4;3*2.5" |bc)
MYVAR=`echo "scale=4 ; 3*2.5" | bc`
请注意,bash 不喜欢非整数值 - 您将无法在 bash 中使用 7.5 进行计算。
MYVAR=$(echo "scale 4;3*2.5" | bc)