gpt4 book ai didi

linux - -bash : command substitution: syntax error near unexpected token |'

转载 作者:太空宇宙 更新时间:2023-11-04 09:19:24 28 4
gpt4 key购买 nike

我是在我的 .bashrc 上做的

.bashrc

vm_name=$(curl http://artii.herokuapp.com/make?text=saml)
echo -e \"





$vm_name



\"

我得到了

\[\]                      _ 
| |
___ __ _ _ __ ___ | |
/ __|/ _ _ \| |
\__ \ (_| | | | | | | |
|___/\__,_|_| |_| |_|_|

\[\]

我遇到了这个错误

-bash: command substitution: line 9: syntax error near unexpected token |'
-bash: command substitution: line 9:
| '_ '

有没有办法绕过这个错误并强制我的 echo 将我的横幅视为字符串?

最佳答案

虽然您已经找到了问题的解决方案,但还是值得解释一下您的问题。通过转义双引号,可以防止它们被解析为句法引号(它们被解释为文字引号)。

因此,您没有回显 $vm_name 前后有空行:您实际上是在回显 ",具有空命令行(什么都不做),然后尝试执行扩展的 vm_name 的内容,进行分词,然后被视为后跟参数的命令(这是可以理解的失败)。

以下会起作用:

vm_name=$(curl http://artii.herokuapp.com/make?text=saml)
echo -e "


$vm_name

"

当然,只执行 curl 命令而不将其捕获到变量中会更简单。

请记住转义双引号不会被解释为字符串定界符,它们是文字双引号。

关于linux - -bash : command substitution: syntax error near unexpected token |',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43667509/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com