问题基本上是,bash如何处理双引号和括号?
我想不到更好的例子,所以对此表示歉意,但请想象这样的情况:
“$(echo“ $ {foo}”)”
在那里会发生什么?${foo}在引号范围之外吗?Bash是否足够聪明,还要考虑它是否在括号内,从内向外工作?“$ {foo}”是否更好?
我尝试过谷歌搜索,但没有结果。请注意,这与嵌套引用问题不同,因为它包括扩展。
谢谢!
我想不到更好的例子,所以对此表示歉意,但请想象这样的情况:
“$(echo“ $ {foo}”)”
在那里会发生什么?${foo}在引号范围之外吗?Bash是否足够聪明,还要考虑它是否在括号内,从内向外工作?“$ {foo}”是否更好?
我尝试过谷歌搜索,但没有结果。请注意,这与嵌套引用问题不同,因为它包括扩展。
谢谢!
$(echo ${foo})
的结果被解释为一个单词,但${foo}
也应该被解释为一个单词。这主要是出于对bash转义工作方式的好奇,而不是因为我不能通过临时变量等方法解决这个问题。 - spalac24