在(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 开始一行'
本身并没有什么用。