在 Unix shell 中退出“>”模式

Dor*_*Dor 3 command-line shell escape-characters

在 sh (不是 Bash)中,当提示处于>模式时,我们如何中止命令的执行?

例如,当输入一个只在开头带引号的字符串时,它会使提示看起来像>,而无法正常退出,除非点击Ctrl + D。例子:

root@MyPC:~# echo "hello
> I am
> (How do I exit of this mode?)
Run Code Online (Sandbox Code Playgroud)

如果我不知道哪个字符分隔字符串("或者'只是用反斜杠转义换行符/空格),有没有办法让 Bash 知道我想中止当前命令的执行?

Flu*_*lup 16

^Caka Ctrl+C会中止你正在做的事情,让你回到正常的提示。

  • 一般来说,知道中断任何正在运行的命令是一件好事。 (2认同)
  • 如果它不起作用,请尝试使用 crtl + d 来停止进程,如果不起作用,请使用 ctrl + z 使正在运行的命令后台运行,找到它的 PID 并使用“kill”杀死它 (2认同)
  • @Kiwy 更简单的是运行`jobs`并使用`kill %x` (2认同)