以撇号开头的 shell 模式是什么?

以撇号开头的 shell 模式是什么?

在(SSH)终端会话中,由键序列启动的模式apostrophe <ENTER>(或者更确切地说)的用途是什么'<ENTER>

退出该模式的方法是什么?

答案1

键入'enter不会启动任何特殊的 SSH 模式。您键入的(常规)命令由 SSH 连接另一端的 shell 解释,而不是 SSH 本身。

'在 shell 术语中通常称为单引号、"双引号和`反引号。

'开始一个 shell 不解释的字符序列。这很有用,例如,如果您需要将一个参数传递给程序,则必须包含$或另一个否则将被 shell 解释的字符序列,或者包含换行符。您使用另一个 来结束该序列'

"类似,但会发生一些插值(即变量被扩展)。

`不同。这是命令替换。如果你输入

echo `foo`

foo在运行命令之前替换运行程序的输出echo。另一种方法是使用$(...)

echo $(foo)

因此,如果您输入'enter,则您只是开始了一个多行文字字符串。您可以用匹配的 来结束它',或者CtrlC如果您想跳出,则用 。

$ echo 'hello
> this
> is 
> a
> multiline
> string
> '
hello
this
is
a
multiline
string
$ echo 'foo $PWD'
foo $PWD               # no interpolation
$ echo "foo $PWD"
foo /tmp               # interpolation

以 a 开始一行'本身并没有什么用。

相关内容