Closed. 这个问题不符合堆栈溢出指南 /help/closed-questions 。目前不接受答案。
使用clear
终端上的命令只会欺骗用户,让他们认为屏幕已被清除...当您使用鼠标滚动时,您仍然可以看到先前命令的输出。当你淹没在文字海啸中时,这会让你的生活变得困难。
可以在互联网上找到的各种解决方案(转义码等)只是clear命令已经执行的操作的变体。
那么如何真正清除 Linux 中终端的内容呢?
使用以下命令进行清屏,而不仅仅是添加新行...
printf "\033c"
是的,这是 bash 提示符上的“printf”。
不过,您可能想定义一个别名......
alias cls='printf "\033c"'
解释
\033 == \x1B == 27 == ESC
所以这就变成了<ESC>c
这是用于重置终端的 VT100 转义码。Here https://web.archive.org/web/20191222201924/http://www.termsys.demon.co.uk/vtansi.htm 是有关终端转义码的更多信息。
Edit
这里有一些其他的方法......
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
上面的内容在 KDE 控制台(称为 Konsole)上不起作用,但还有希望!使用以下命令序列清除屏幕和回滚缓冲区...
clear && echo -en "\e[3J"
或者也许在 KDE 上使用以下别名...
alias cls='clear && echo -en "\e[3J"'
我得到了回滚清除命令here https://superuser.com/a/59718/6765 .
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)