Bash脚本中的下面一行
echo $AAAA" "$DDDD" "$MOL_TAG >> ${OUPUT_RESULTS}
给我这个错误:
line 46: ${OUPUT_RESULTS}: ambiguous redirect
Why?
Bash脚本中的下面一行
echo $AAAA" "$DDDD" "$MOL_TAG >> ${OUPUT_RESULTS}
给我这个错误:
line 46: ${OUPUT_RESULTS}: ambiguous redirect
Why?
当前回答
你有一个名为OUPUT_RESULTS的变量吗?还是更可能是OUTPUT_RESULTS?
michael@isolde:~/junk$ ABC=junk.txt
michael@isolde:~/junk$ echo "Booger" > $ABC
michael@isolde:~/junk$ echo "Booger" >> $ABB
bash: $ABB: ambiguous redirect
michael@isolde:~/junk$
其他回答
如果你在这里试图用GitHub动作调试这个“模糊重定向”错误。我强烈建议这样尝试:
echo "MY_VAR=foobar" >> $GITHUB_ENV
我使用$GITHUB_ENV所经历的行为是,它将其添加到管道环境变量中,如我的示例所示MY_VAR
对于我的例子,如果我通过env指定输出文件(例如$ENV_OF_LOG_FILE),那么将得到错误模糊重定向。
但是,如果我使用纯文本作为文件路径(例如/path/to/log_file),那么就没有错误。
你有一个名为OUPUT_RESULTS的变量吗?还是更可能是OUTPUT_RESULTS?
michael@isolde:~/junk$ ABC=junk.txt
michael@isolde:~/junk$ echo "Booger" > $ABC
michael@isolde:~/junk$ echo "Booger" >> $ABB
bash: $ABB: ambiguous redirect
michael@isolde:~/junk$
Bash有时很迟钝。
对于基本相同的错误,下面的命令都会返回不同的错误消息:
$ echo hello >
bash: syntax error near unexpected token `newline`
$ echo hello > ${NONEXISTENT}
bash: ${NONEXISTENT}: ambiguous redirect
$ echo hello > "${NONEXISTENT}"
bash: : No such file or directory
在变量周围添加引号似乎是处理“模糊重定向”消息的好方法:当您犯了键入错误时,往往会得到更好的消息——当错误是由文件名中的空格引起时,使用引号是解决办法。
我刚刚在bash脚本中出现了这个错误。问题是在前一行的末尾出现了一个意外的\错误。