假设你开始喜欢写命令的bash:
$ rm -rf /foo/bar/really/long/path/here
然后意识到你不想毕竟执行此操作。 有没有一种方法来清除一个或两个按键输入?
我一直在做最近是在前面加上回声和封闭引号输入(按Ctrl + A, echo "
按Ctrl + E, "
),然后按下回车键。 是否有一个更快的方法?
假设你开始喜欢写命令的bash:
$ rm -rf /foo/bar/really/long/path/here
然后意识到你不想毕竟执行此操作。 有没有一种方法来清除一个或两个按键输入?
我一直在做最近是在前面加上回声和封闭引号输入(按Ctrl + A, echo "
按Ctrl + E, "
),然后按下回车键。 是否有一个更快的方法?
按Ctrl - U删除光标之前的一切。 被删除的命令将被存储到缓冲区中。 按Ctrl - y以粘贴删除命令。
(可选:按挂机键或Ctrl - e跳到输入结束第一。)
或者,按Ctrl - C至终止你正在输入的内容。
尝试按Ctrl + U。 这将清除输入线。
发现在短参考http://www.ice2o.com/bash_quick_ref.html而搜索 。
CTRL + E(如果不是在该行的结束),加上CTRL + U将做到这一点。
按Ctrl - U, 按Ctrl - K的伎俩也。
按Ctrl - U从排队光标开始删除等一应俱全, 按Ctrl - K删除一切从光标到行的末尾。 (有时是有用的,只有使用其中的一个。)
有两种方法做到这一点
Ctrl + C -这将清除整条生产线,无论身在何处光标。
Ctrl + U 键 -这清除专线,直到开始光标的位置。
一个很好的快捷方式按Esc键 #。 它会在前面加上一个#
字符(从而使该行成为注释),然后按Enter键。 如果你再决定,你仍然需要的命令,你仍然有它在你的历史:)
在bash按下Esc键加上Backspace键将清除一切都交给光标的位置。
(在Cygwin的,这将清除输入到下一个单词。单词之间用空格分隔,下划线,...)
想想看,用Ctrl - U(或Ctrl - E和然后按Ctrl - U)将存储你明确的缓冲区,这样你就可以在以后使用Ctrl键粘贴- 年 。
要删除当前行,试试:
按Ctrl - X, 按Ctrl - U
作为替代,你可以使用:
ESC - d
这需要在〜/ .inputrc文件:
"\ed": kill-whole-line
见: http://codesnippets.joyent.com/posts/show/1690
如果您在使用bash vi模式 (设置它set -o vi
),然后按Esc键切换到vi的正常模式和类型dd
删除当前行!
这是一个扩展knittl的回答是用哈希前缀存储在控制台历史记录行。 克服剪贴板的缺点,如偶然重写或暂时无法查看切割线以供参考。
请使用快捷键:
哈希字符#
将被前置到线,从而把全行成一个注释。 它也将返回一个新的提示,仿佛回车被用户按下。 例如
$ #rm -rf /foo/bar/really/long/path/here
$
要恢复从控制台历史旧线使用以下快捷方式之一:
直到出现所需的线路重复快捷键。
要删除行的哈希#
前缀可有几个不同的选项:
删除第一个字符并立即执行的命令:
将光标移动到启动和清除第一个字符,而不执行命令: