我有一个存储在programfile中的程序,我希望在其中传递命令行参数(包含varargs文件的内容)。我还想从文件p的内容中获取stdin的输入。然后我想将最终输出存储到变量输出中。
这就是我所拥有的:
"$programfile" "${varargs}" < "${p}" > "$output"
我不确定这是否正确,因为我认为我的语法不在某处?
答案 0 :(得分:2)
对我来说很好,只要你的意思是将最终输出存储到名称在变量output
中的文件中。如果您想将输出放入变量,则应使用反引号或$()
。
答案 1 :(得分:0)
如果你拥有它,你的输出将转到以$output
的值命名的文件,而不是变量本身。你可以这样做:
output=$("$programfile" "${varargs}" < "${p}")
答案 2 :(得分:0)
重定向器>
通常用于将输出重定向到文件或设备。例如,
ls > list.txt
但是要将结果存储为变量,您需要执行以下操作:
result=`ls`
<
的使用是正确的。