如何获得“模糊重定向”错误?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (46)

在我的Bash脚本中的下面一行

 echo $AAAA"     "$DDDD"         "$MOL_TAG  >>  ${OUPUT_RESULTS}

给我这个错误:

 line 46: ${OUPUT_RESULTS}: ambiguous redirect

为什么?

提问于
用户回答回答于

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

围绕变量添加引号似乎是处理“模糊重定向”消息的好方法:当你犯了一个输入错误时,你往往会得到一个更好的信息 - 当错误是由于文件名中的空格造成的,使用引号是修复。

用户回答回答于

你有一个变量吗?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$ 

扫码关注云+社区