使用键盘快捷键清除终端


58

我很好奇是否有办法通过一些键盘快捷键清除终端缓冲区/输出。我正在使用Ubuntu。我知道

Ctrl + L

清除终端,但是您仍然可以向后滚动以查看旧文本。我正在寻找类似于的东西

reset 

命令可以。在Mac上

apple + k

似乎可以解决问题。


您可以键入“清除”。
达伦

Answers:


43

在gnome终端中,您可以使用来编辑键盘快捷键。Edit -> Reset Shortcuts... 然后,您可以映射命令“重置并清除”,这似乎可以满足您的要求。

或者,您可以将回滚历史记录限制为较小的数字(例如0),而Ctrl + L会更接近您要查找的内容。


2
在更高版本的gnome和gnome终端中,这可能已更改。对我来说Edit -> Preferences -> Shortcuts(我正在使用GNOME Terminal v3.16.2)
Chris Sprague

2
我一直在寻找“重置并清除”,只是它无法保留提示。立即使用Ctrl + L组合键将恢复提示。因此,在将“重置并清除”绑定到Ctrl + K的情况下,我可以按Ctrl + K,Ctrl + L清除回滚并为我提供准备就绪提示。
Trevor Dixon

29
  • CTRL+ u从光标清除到行首

  • CTRL+ k从光标清除到行尾

  • CTRL+ d清除光标右侧的一个字符

  • Esc+ Backspace清除光标左侧的一个单词

  • Esc+ d清除光标右侧的一个单词

  • Alt+ left/right跳到上一个/下一个单词的开头

要清除整个屏幕,请在~/.bashrc文件中添加以下别名:

alias cls="echo -ne '\033c'"

现在,在新的终端中键入cls将清除所有内容,包括滚动缓冲区。它比reset不重置任何内容要快得多。

实际上reset,仅在要修复损坏的终端时才需要,例如在cat二进制文件上运行之后。

如果您使用的是OSX,则Command()+ k将清除终端和chrome devtools控制台 😉)


以及如何添加快捷方式来执行此操作而无需输入cls
FloatingRock

2
@FloatingRock:这取决于您的桌面环境,也可能取决于您的终端,如果终端无法将命令附加到快捷方式,那么您唯一的机会就是设置一个依赖于DE的系统全局快捷方式。例如,在XFCE中,它应该是“设置”>“键盘”>“快捷方式”,不要记住其他外壳程序。
ccpizza 2014年

我一直在寻找这样的事情了几个月..
aggregate116​​6877

3

Ctrl + L重画终端;它不清楚。如果您使用的是less或vim之类的全屏应用程序,则可使用Ctrl-L命令重绘损坏的屏幕。例如,在带有突出显示颜色语法的vim中,如果滚动很长的距离并且vim被引号,方括号或类似字符引起混淆,则可以使用ctrl_l更新颜色。

仅供参考(如果有人搜索并找到了此内容...)。如果需要清除回滚缓冲区,请将缓冲区设置为0行,或者关闭窗口并重新打开。或“ while true; do print; done”,然后在输出足够多的行以炸破缓冲区时用ctrl + c中断。滚动缓冲区取决于应用程序,因此尽管给定的解决方案适用于Gnome终端,但实际上不适用于任何其他终端设备。


此“ blow the buffer”在无限回滚模式下将不起作用。
Ruslan

@Ruslan我想要这些无限内存机器之一。;)
dannysauer

1

我使用Konsole。过去,我一直使用Ctrl+ Shift+ X清除所有内容,包括回滚。现在,有一种新的更好的方法: Ctrl+ Shift+ K和谷歌搜索“ konsole键盘快捷键清除历史记录”并不能很轻松地将您带到那里,但可以将您带到这里。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.