暂时清除Linux中的终端

时间:2015-10-19 02:18:02

标签: c# linux terminal mono sh

我想写一个基于GUI /终端的应用程序,我需要清除终端,然后写出gui。

但是,如何在应用程序完成后将终端重置为正常状态?

1 个答案:

答案 0 :(得分:1)

终端(例如xterm和“任何”模拟它)支持称为备用屏幕的功能。通常,终端描述包括切换到smcuprmcup功能中的备用屏幕,并由ncurses应用程序使用。 (并不总是使用该功能,因为某些用户不喜欢该功能)。即使它不是终端描述的一部分(见tgetstr("ti")tigetstr("smcup")),您的应用程序也可以编写文字转义序列。

在将切换到备用屏幕时,约定(在终端转义序列中使用)是清除备用屏幕,将光标放在左上角。切换回原始(正常)屏幕和光标位置。

xterm常见问题 Why doesn't the screen clear when running vi? 中讨论了备用屏幕。