Bash
這裡字元串的結尾是什麼?
在我看來,這裡字元串的結尾是換行符。我意識到我錯了:
$ cat <<< hello world cat: world: No such file or directory
什麼可以表示此處字元串的結束?
這裡字元串的語法是:
<<< word
其中,單詞是被 shell 視為一個單元的字元序列,由空格分隔。這可以是單個正常單詞 (
hello
)、單引號或雙引號字元串 ('hello world'
,"hello world"
)、參數或命令替換 ($foo
,$(...)
)、由反斜杠轉義組合而成的內容,或者是這些組合在一起的組合。您可以在一行上有多個 here-documents 或 here-strings,因此行尾不能作為唯一的分隔符,但如果還沒有的話,它將在那裡結束(除非換行符是反斜杠轉義的)。
你會得到你想要的效果
cat <<<'hello world'
或者
cat <<<hello\ world