我有一个类似于下面的循环:
for time in ${seconds_list}; do
echo "scale=2; (${cur_time}-${time})/3600" | bc
done
当然,我可以将结果“回显”到一个文件中并完成它,但我认为更优雅的方法是将所有 for 循环结果存储在一个变量中,我可以稍后使用时间。 包含所有结果的变量必须如下所示:
var='30.25
16.15
64.40
29.80'
有没有一种简单的方法可以实现这一目标?
最佳答案
这真的很简单,您只需将整个循环的输出重定向到一个变量(如果您只想按说明使用一个变量):
VARIABLE=$(for time in ...; do ...; done)
你的例子:
var=$(for time in ${seconds_list}; do
echo "scale=2; (${cur_time}-${time})/3600" | bc
done)
只需将您的代码包含在 $() 中即可。
关于linux - 将 for 循环结果存储为 bash 中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36223802/