我以前在 Windows 中使用 cmd,我经常使用的命令行是cls
。它有点像clear
Linux 中使用的命令,但它会永久清除屏幕。
如果您使用该clear
命令,它只会向下滚动,这样您就看不到您正在处理的命令。
我非常喜欢这两者,但我的问题是,我如何获得cls
类似的命令,清除屏幕,并且无法向上浏览,以查看您正在处理的命令?
答案1
您可以使用reset
。这会重置整个终端,因此这可能有点过头了。
关于 Konsole 的说明:
@机械蜗牛注意到“在 Konsole 4.8.5 中,如果向上滚动,旧文本仍然存在”。
@gertvdijk解释说这是“一项功能。Konsole 有Ctrl+ Shift+ K(重置和清除回滚)。”
答案2
将此行添加到(即,位于您的主文件夹中的~/.bashrc
文件- 您可以通过按+在 Nautilus 中看到它):.bashrc
CtrlH
alias cls='printf "\033c"'
现在,该cls
命令将像在 Windows 中一样清除屏幕。它将带您回到终端窗口的顶部,上面不显示任何文本。(它不会删除 shell 的命令历史记录。)
这是因为:
.bashrc
每次bash
shell 启动时运行。- 该
alias
命令定义cls
运行右侧引用的命令的命令。 printf
命令将字符写入终端。它接受转义码。八进制033
是用于表示终端开始的字符控制码。 这控制码c
告诉终端清除自身。- 因此,通过对此进行修改
.bashrc
,正在运行的程序cls
会将必要的数据发送到终端,以告知其清除自身。
答案3
在当前终端窗口中,只需输入以下内容:
printf "\033c"
答案4
cls
通过清除缓冲区来实现,在 DOS 和 Windows 中分别固定为 25 行或 50 行。您可以通过在缓冲区中写入足够多的行以使其溢出(2000 是典型值)来实现类似的效果,但正如reset
@lgarzo 所说,这也是一种可行的选择。