Ere*_*evi 4 scripting bash io-redirection variable
我有一个 bash 脚本,它接受一个参数“$input”,并且(除其他外)将它定向到一个程序中并收集输出。
目前我的线路是:
OUTPUT=`./main.exe < $input`
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
$input: ambiguous redirect
Run Code Online (Sandbox Code Playgroud)
正确的做法是什么?
您的变量值可能包含空格。
你应该双引号:
output=$( ./main.exe <"$input" )
Run Code Online (Sandbox Code Playgroud)
该bash
壳要求的变量,在这种情况下,被引用和否则将执行单词拆分和文件匹配其价值,而其他外壳可能不需要这个。
另外,请注意,$input
这里是将连接到程序的标准输入流的文件的路径名,而不是参数main.exe
(我可能误解了您的文本,但绝非如此)。如果你想$input
用作命令行参数,你的命令看起来像
output=$( ./main.exe "$input" )
Run Code Online (Sandbox Code Playgroud)
有关的:
还:
归档时间: |
|
查看次数: |
922 次 |
最近记录: |