bash - in for循环,输出命令到文件和设置变量

时间:2016-04-27 00:21:24

标签: bash

是否可以将命令的结果输出到文件并设置变量,所有这些都在同一个命令中?

以下内容会将输出附加到文件中,但不会设置var。

for i in myarray; do
    var=$(command >> file)
done

不确定这是否可行。

1 个答案:

答案 0 :(得分:5)

以下内容会将输出发送至file以及设置var

var=$(command | tee -a file)

这是有效的,因为tee重复了command的输出。一个副本附加到file,而另一个副本发送到stdout。命令替换$(...)捕获该标准输出并将其保存在var