bash - 将'附加到命令末尾?

bash - 将'附加到命令末尾?

我偶然发现了这一点,想知道这是什么意思。我所做的就是输入

adb logcat

但不小心输入了

adb logcat'

我听到的是:

在此处输入图片描述

我使用 Control-C 退出它,然后再次尝试使用ls、、cd大量命令,每个结果都相同。

答案1

单引号开始一个字符串,其中可能包含换行符。用另一个单引号结束它,然后查看您输入的命令对字符串做了什么。在大多数情况下,它会发出某种错误,例如“找不到文件”,因为很少找到名称中嵌入换行符的文件。

答案2

它正在等待您完成引用。如果您再输入一个 ',它将完成引用。然后您可以尝试 Home 键或 Control-A,看看是否允许您编辑该行。

当需要给出 shell 将尝试使用的名称时,引号会很有用,例如:

触摸“你好”

将创建一个名为“Hello There”的文件。如果没有 ',它将创建两个文件,分别名为 Hello 和 There。它与使用 " 字符不同,如下所示:

触摸'$HELLO THERE'

将创建一个名为“$HELLO THERE”的文件,但是:

触摸“$HELLO THERE”

将创建一个名为“THERE”的文件和一个以 shell 变量 $HELLO 的内容命名的文件名[假设它存在]。

相关内容