我注意到使用 Ctrl+L 清除终端与使用 clear 命令(来自 ncurses 6.5.20240427)有一些区别。
似乎清除命令会擦除终端中的每个字符,将光标设置在左上角,然后输入提示。
Ctrl+L 似乎可以做同样的事情,但我的提示的上面两行(以及它上面的空白行)没有显示。
有趣的是,如果我在提示后输入了某些内容,它会保留该内容 - 不仅仅是提示所在的行,还包括提示之后的所有内容。
我仔细研究了一下man clear
,没有找到可以复制这种行为的选项,那么 Ctrl+L 键到底在后台做什么呢?它是在调用一个程序,还是大多数终端仿真器内置的一种行为,具体实现到特定的终端?