在bash中,一个人如何清除当前输入?(In bash, how does one clear th

2019-06-24 09:33发布

假设你开始喜欢写命令的bash:

$ rm -rf /foo/bar/really/long/path/here

然后意识到你不想毕竟执行此操作。 有没有一种方法来清除一个或两个按键输入?

我一直在做最近是在前面加上回声和封闭引号输入(按Ctrl + A, echo "按Ctrl + E, " ),然后按下回车键。 是否有一个更快的方法?

Answer 1:

  1. Ctrl - U删除光标之前的一切。 被删除的命令将被存储到缓冲区中。 按Ctrl - y以粘贴删除命令。

    (可选:按挂机键或Ctrl - e跳到输入结束第一。)

  2. 或者,按Ctrl - C至终止你正在输入的内容。



Answer 2:

尝试按Ctrl + U。 这将清除输入线。



Answer 3:

发现在短参考http://www.ice2o.com/bash_quick_ref.html而搜索 。

CTRL + E(如果不是在该行的结束),加上CTRL + U将做到这一点。



Answer 4:

按Ctrl - U, 按Ctrl - K的伎俩也。

按Ctrl - U从排队光标开始删除等一应俱全, 按Ctrl - K删除一切从光标到行的末尾。 (有时是有用的,只有使用其中的一个。)



Answer 5:

有两种方法做到这一点

Ctrl + C -这将清除整条生产线,无论身在何处光标。

Ctrl + U -这清除专线,直到开始光标的位置。



Answer 6:

一个很好的快捷方式按Esc键 #。 它会在前面加上一个#字符(从而使该行成为注释),然后按Enter键。 如果你再决定,你仍然需要的命令,你仍然有它在你的历史:)



Answer 7:

在bash按下Esc键加上Backspace键将清除一切都交给光标的位置。

(在Cygwin的,这将清除输入到下一个单词。单词之间用空格分隔,下划线,...)



Answer 8:

想想看,用Ctrl - U(Ctrl - E和然后按Ctrl - U)将存储你明确的缓冲区,这样你就可以在以后使用Ctrl键粘贴-



Answer 9:

要删除当前行,试试:

按Ctrl - X, 按Ctrl - U

作为替代,你可以使用:

ESC - d

这需要在〜/ .inputrc文件:

"\ed": kill-whole-line 

见: http://codesnippets.joyent.com/posts/show/1690



Answer 10:

如果您在使用bash vi模式 (设置它set -o vi ),然后按Esc键切换到vi的正常模式和类型dd删除当前行!



Answer 11:

这是一个扩展knittl的回答是用哈希前缀存储在控制台历史记录行。 克服剪贴板的缺点,如偶然重写或暂时无法查看切割线以供参考。

注释行并返回新的提示

请使用快捷键:

  • Esc键 ,#
  • ALT +#

哈希字符#将被前置到线,从而把全行成一个注释。 它也将返回一个新的提示,仿佛回车被用户按下。 例如

$ #rm -rf /foo/bar/really/long/path/here
$

检索注释行

要恢复从控制台历史旧线使用以下快捷方式之一:

  • 向上
  • CTRL + P

直到出现所需的线路重复快捷键。


快速散列前缀移除

要删除行的哈希#前缀可有几个不同的选项:

删除第一个字符并立即执行的命令:

  • Esc键 1 Esc键
  • Alt键 - Alt +#

将光标移动到启动和清除第一个字符,而不执行命令:

  • 主页删除
  • CTRL + A,使用Ctrl + d


文章来源: In bash, how does one clear the current input?
标签: bash input