python - Stty 疯狂地使用 Python 子进程

标签 python linux debugging subprocess stty

我遇到了一个奇怪的问题。每次我通过 subprocess.Popen(cmd).wait() 调用特定命令 cmd 时,stty 都会变坏(不会在 shell 上回显我的进一步命令,换行符不起作用等)命令结束时。我必须运行 stty sane 才能使 stty 恢复正常。这可能是什么原因?

更新 我正在运行的命令正在启动 elasticsearch过程。该命令在后台启动进程。

最佳答案

您正在运行的命令可能会向您的终端发出一些转义序列,从而改变其模式或其他设置。需要完整终端功能的程序可以做到这一点(例如,基于文本的编辑器)。

捕获您正在执行的程序的标准输出并防止它出现在屏幕上可能会有所帮助。你试过了吗?

关于python - Stty 疯狂地使用 Python 子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7565753/

相关文章:

python - 针对一个字符串测试多个子字符串

linux - shell 脚本不通过 crontab 运行,手动运行正常

.net - 是否可以恢复启用 EmbedAllSources 构建的 nuget 包的源代码?

python - 如何检查一个二维数组是否在另一个二维数组中

python - PyQt5 GUI 程序不会在主窗口内显示小部件

linux - 如何退出 perl 脚本中的 chroot?

linux - 从 shell 变量中解析数据并使用新数据重用变量

delphi - 如果我有 dll 源代码,是否可以从 Delphi 调试 C++builder dll?

c++ - 无法在C++ Windows上打开.txt文件

arguments - 选择 2-3 个选项作为函数参数的 Pythonic 方式