在我键入一个长命令后,出于某种原因,我决定不执行它。但我只是想在没有清除命令的情况下开始一个新行。那个命令还在屏幕上?有人帮我吗?
#I typed as below:
$>find -name "filepattern" -exec grep "hello" {} ;
#I wanted as below without executing the 'find' command.
$>find -name "filepattern" -exec grep "hello" {} ;
$>
一个有用的 bash 快捷方式是 Alt# 来注释掉当前命令。
例如:
$ find -name "filepattern" -exec grep "hello" {} ; <Alt+#>
$ #find -name "filepattern" -exec grep "hello" {} ;
$
我喜欢这个,因为它将命令存储在您的历史记录中。然后,您可以返回到它,删除#
并运行它。有了Ctrl+C
,您将丢失已编写的命令。
您可以使用 ctrlc 来"取消"您键入的命令。
我在OS X上的测试:
bash-3.2$ find -name "filepattern" -exec grep "hello" {} ; <ctrl+c>
bash-3.2$
bash-3.2$ /bin/bash -version
/bin/bash -version
GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin12)
Copyright (C) 2007 Free Software Foundation, Inc.
bash-3.2$
一种临时解决方案是在当前行的开头添加一个"#"以将其转换为注释。
ctrl u 会给你一个新行开始。您可以使用 ctrly 继续使用之前键入的旧命令