当前位置: 首页 > 科技观察

Linux系统如何彻底清屏?

时间:2023-03-16 22:09:10 科技观察

Linux用户,尤其是Ubuntu或者CentOS用户,基本习惯使用clear命令或者快捷键组合Ctrl+L来清空终端屏幕。但是,这样做实际上并没有清屏,只是给人一种清屏的错觉。但是当用鼠标向上滚动时,你仍然可以看到之前命令操作遗留下来的输出。在处理大量文本时,这种情况会给我们带来麻烦。您可以在Internet上找到许多其他清屏方法,但它们基本上都是clear命令的变体。那么,如何真正清除屏幕呢?巧合的是,最近发现了一条命令,彻底解决了我们的问题。printf"\033c"正是我们需要的命令。它是真正清屏的,其作用与DOS中CMD.EXE提供的CLS效果非常相似。但是这个命令到底做了什么?它是如何工作的?\033==\x1B==27==ESC所以,这个命令变成了c,这是VT-XXX中“FullReset(RIS)”的转义码。我们今天使用的所有终端都与VT兼容,但如果您发现自己使用的终端非常奇怪,您可能无法使用此命令。printf是bash中的内置命令,内置命令的优先级高于其他可执行文件。我们还可以使用另一个命令reset,它也会清空终端屏幕,但我们仍然可以使用上下键查看历史命令。这个命令的一个缺点是它执行起来有点慢,可能是因为它没有发送ESCc命令,但是这个命令显然比上一个更兼容。当您的终端控制混乱时,重置命令非常有用。您是否遇到过键入的字符没有出现在光标位置的情况?当您按下回车键时,新提示不会出现在新行上,而是出现在旧提示之前?重置命令就是为了解决这个问题。您也可以在Cygwin上使用此命令。[英文原文:how-to-clear-terminal-screen-for-real]