查找匹配的“”时出现意外的 EOF

查找匹配的“”时出现意外的 EOF

有人能向我解释为什么echo 'test \'hi\'' > test不起作用吗?它没有写入hi文件test。单引号似乎被正确转义了,不是吗?

谢谢。

答案1

您不能在单引号字符串中嵌入单引号。 相反,您必须将单引号放置在引用字符串的外面并进行转义。

例如:

echo 'test '\''hi'\' > test

这写道:

  • test来自'test '(单词后有一个空格test- 语法高亮没有反映这里......)
  • 可以\'写成文字引用
  • 写道。hi'hi'
  • 可以\'写成文字引用
  • 结果test 'hi'被写入名为 的文件test

相关内容