使用 os.urandom 后 IPython mac 终端出现奇怪的字符
使用 IPython、osx 终端并远程连接到 ubuntu 服务器时。我注意到,如果我尝试编码并打印 os.urandom(1) 的输出,它将破坏终端,并且所有输入将开始如下所示:
⎽⎽␌±┌▒␌␊@▒⎻⎻.⎻┌▒␌␊⎻┤┼␌.␌⎺└
即使 ipython 关闭后,来自终端的所有输入和输出仍继续以这种方式显示。
要复制你可以尝试:
import os
for i in xrange(10000):
try:
print os.urandom(1).encode('utf-8')
except:
pass
我没有用使用一段代码来做类似的事情。我只是想知道为什么它会破坏终端。
When using IPython, osx terminal and remoting into an ubuntu server. I noticed that if I try to encode and print the output of os.urandom(1) it will break the terminal and all input will start to look like this:
⎽⎽␌±┌▒␌␊@▒⎻⎻.⎻┌▒␌␊⎻┤┼␌.␌⎺└
All input and output from the terminal continues to be displayed in that way even after ipython has been closed.
To replicate you can try:
import os
for i in xrange(10000):
try:
print os.urandom(1).encode('utf-8')
except:
pass
I have no use using a piece of code that does something like that. I'm just wondering why it would break the terminal.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
某些字符序列会将终端发送到备用字符集模式等。运行
reset
来修复此问题。Certain character sequences will send the terminal into alternate character set modes and the like. Run
reset
to fix this.