我想创建一个命令行密码文件解密脚本,它会在终端窗口中显示加密文件的内容,最多可以说10秒,之后文本会自动清除。
我不确定这种功能的正确术语是什么,如果答案可以通过正确的搜索字符串获得,那就很抱歉。
答案 0 :(得分:2)
如果您只需要显示一行“秘密”输出,则可以使用“回车”并覆盖该行。它不会在终端历史记录中留下任何痕迹。
from __future__ import print_function
import time
import sys
print("hello", end = '')
sys.stdout.flush()
time.sleep(1)
print("\rxxxxx")
sys.stdout.flush()
答案 1 :(得分:0)
您可以使用ansi escape sequences清除终端。这适用于几乎所有终端模拟器(win32控制台除外)。
import time
import sys
print '\x1b[0;0H\x1b[2J' # home cursor, clear screen
print 'terribly secret file contents'
time.sleep(2)
print '\x1b[2J'
sys.stdout.flush() # flush output buffer.
但是,如果您的程序输出被重定向到文件,它仍将被捕获。
此外,您可能必须禁用终端的回滚缓冲区。