Answers:
是的,您要查找的命令是
reset
与此相反clear
,或Ctrl+ L,reset
实际上将完全重新初始化的终端,而不是只清除屏幕。但是,它不会重新实例化外壳(bash)。这意味着bash的状态与以前相同,就像您只是清除屏幕一样。
正如@Wallacoloo在评论中提到的那样,此命令应该可以更快地完成相同的操作:
tput reset
从其他答案:
您可以将一组键盘快捷键,以reset
终端,如通过解释towolf。
如果您正在运行Kubuntu,并且您的终端是Konsole,那么您需要转到编辑→清除历史记录,因为reset
此处的工作方式与UncleZeiv所述不同。
reset
取决于终端。
^L
。我没有看到它(这就是我想要的!),我没有感觉,如果突然之间,我将需要恢复那里的东西-没问题。reset
相比之下,它要难得多,我会在终端出现问题时使用它,例如奇怪的转义序列意外完全破坏了显示屏。
tput reset
显然,它也可以做同样的事情,但是reset
可以立即完成(而重新显示提示可能要花费大约2秒钟的时间)。
我寻找了一段时间,发现了一些天才将其发布:
clear && printf '\e[3J'
清除整个屏幕缓冲区,非常干净。可以在OS X上运行,并且相信它在大多数* nix终端上都可以正常工作。
出于好奇,这部分'\e[3J'
是终端转义命令。
reset
。
printf '\e[3J'
意思 如何清洁缓冲区?
reset
-它不只是清除终端。例如,如果您不小心打印了一个带有随机垃圾的二进制文件,该垃圾破坏了终端(例如,禁用了键入字符的回显),reset
通常可以解决该问题。当然,只要您知道如何\override
使用别名阴影命令,就可以使用别名。
您还可以通过转到编辑→键盘快捷方式在gnome-terminal中分配快捷方式。我用Shift+ Ctrl+ Alt+ C。
从stackoverflow交叉发布我的答案。
使用以下命令可以清晰显示屏幕,而不仅仅是添加新行...
printf "\033c"
是的,这是bash提示上的“ printf”。
您可能会想要定义一个别名...
alias cls='printf "\033c"'
\033 == \x1B == 27 == ESC
因此,这<ESC>c
就是用于重置终端的VT100转义代码。这是有关终端转义码的更多信息。
还有其他几种方法...
printf "\ec" #\e is ESC in bash
echo -en "\ec" #thanks @Jonathon Reinhart.
# -e Enable interpretation of of backslash escapes
# -n Do not output a new line
上面的方法在KDE控制台(称为Konsole)上不起作用,但是有希望!使用以下命令序列清除屏幕和向后滚动缓冲区...
clear && echo -en "\e[3J"
或者在KDE上使用以下别名...
alias cls='clear && echo -en "\e[3J"'
我从这里得到了回滚清除命令。
运行以下命令:
reset
这与启动新终端具有相同的效果。
reset
,我仍然可以向上滚动并查看以前的内容。这是PuTTY的问题而不是问题reset
吗?
reset
不会清除macOS 10.14 Mojave上的回滚。您可以尝试seq 100; reset
查看仍在回滚。在macOS终端上,Cmd+K
可以清除屏幕和向后滚动。
我最喜欢的是printf "\ec"
。也可以是printf "\033c"
或printf "\x1bc"
。这是一个ansi转义序列,可以奇迹般地清除终端输出的屏幕和缓冲区(对于我在其中工作过的大多数标准终端来说,我似乎都知道-我知道它可以在类似Ubuntu的gnome-terminal,terminator,xterm等中运行) Linux)
我知道这可以在Linux Mint和Ubuntu 14.04中使用,所以我不知道为什么人们会添加和添加诸如之类的东西clear && echo -ne "\033c
。printf "\ec"
一直为我工作。
另外,在我中,.bashrc
我有一个像这样的绑定:
bind -x '"\C-t": printf "\ec"';
现在我一直按ctrlt。
xev
(只需xev
在x会话中键入终端)。据我所知,urxvt不支持它。虽然我没有尝试过tty,但我相信它不会得到支持。我也怀疑xterm或gnome-terminal是否会支持这一点。使用ansi换码很棘手。欢呼声和对不起您的延迟回复。
或者到reset
,你可以做echo -e "\033c"
,或者在你的.bashrc
,像alias cls="echo -ne '\033c'"
UNIX / Linux StackExchange上有一个线程:如何完全清除终端?(unix.stackexchange.com)以及SuperUser:使用键盘快捷键(superuser.com)清除终端。
@ Hibou57答案的另一种替代方法:
# The Octal Way
alias clear="echo -e '\033c\c'"
要么
# The Hex Way
alias clear="echo -e '\x1b\c'"
基本上,这将具有完全相同的效果,它将打印^[
字符(这将清除终端),并且不输出尾随的新行。
如果您使用yakuake或Konsole的,尽量 Ctrl+ Shift+ K。