如何清除终端(Mac osx)回滚?

时间:2015-04-27 05:10:34

标签: python macos terminal

我正在寻找一种从Python脚本中清除终端回滚的简单方法。我知道os.system('clear'),但是这只会打印新行,隐藏回滚历史记录,删除它。有没有办法做到这一点?谢谢!

2 个答案:

答案 0 :(得分:4)

在Python 2中使用以下内容:

>>> print '\033c',

以及Python 3中的以下内容:

>>> print('\033c', end=None)

这些语句输出 Esc c ,即VT100 escape sequence for "Reset Device"

答案 1 :(得分:0)

如上所述,可以在终端上使用硬件重置,即div class="up"。这样可行,但即使是终端模拟器也可能会产生一些不需要的效果,例如重置颜色。

如果您使用的是\033c,则具有执行此操作的特定控制序列xterm(请参阅 XTerm Control Sequences ,即\033[3J) 。如下所述,OSX终端显然没有实现这一点。

对于OSX特定的行为,之前曾问过这个问题,例如,

(我测试了最后一个,它适用于我)。