命令 fc 将允许对上一个命令进行可视化编辑。如果我在编辑器中改变主意,如何停止执行该命令。在 vim 中输入 q!或 q 都会导致命令被执行,并且 CTRL-C 也不起作用。唯一的选择是删除编辑器中的命令然后 wq 吗?
答案1
在 vi 中,您可以键入:cq
退出而不保存并使用非零返回代码。在这种情况下,该命令将不会重复。
或者,您通常可以挂起编辑器,ctrl-z这样您就可以返回 shell,而无需重新执行命令。您仍然需要fg
重新启动编辑器,但 tmp 文件将不再存在,因此您可以安全地退出编辑器。或者你可以使用kill -9 %
这个暂停的编辑器。
我同意,这可能会更容易。当然,您始终可以使用 vi 或 emacs 命令在 bash 中编辑行。
答案2
也许,更容易记住的方法是删除命令(dd 应该这样做)并退出(ZZ
或任何其他退出保存的方式应该这样做)。恕我直言,:cq
这是相当神秘的。