是否可以将命令的结果输出到文件并设置变量,所有这些都在同一个命令中?
以下内容会将输出附加到文件中,但不会设置var。
for i in myarray; do
var=$(command >> file)
done
不确定这是否可行。
答案 0 :(得分:5)
以下内容会将输出发送至file
以及设置var
:
var=$(command | tee -a file)
这是有效的,因为tee
重复了command
的输出。一个副本附加到file
,而另一个副本发送到stdout。命令替换$(...)
捕获该标准输出并将其保存在var
。