在设备 cat 或 Python 打印后混合了 TTY 字符

fou*_*ric 2 command-line tty

所以,当我cat /dev/input/mouse0在 TTY 中时,稍微移动鼠标,然后ctrl-z停止cat,我的终端字符都搞砸了。几乎每个字符都被替换为 ASCII 字符集中的另一个字符。当我在 Python 3.2 中执行此操作时,也会发生同样的情况:

print('\033[1;12mTest.\033[1;m')
Run Code Online (Sandbox Code Playgroud)

相同的症状不会出现在 GUI 的 shell 上,只会出现在虚拟终端上。如果我注销,问题不会消失。我怀疑某个转义码(可能包含在 Python 代码中)正在将 ASCII 字节码重新映射到字符表示,但这只是猜测。发生了什么以及如何撤消它?

fou*_*ric 5

我终于在命令行 Fu上找到了我正在寻找的命令。命令是reset. 我试过了,它运行得很好,没有注销或重新启动系统。