- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
由于命令模块自 Python 2.6 起已弃用,我正在寻找替换 commands.getstatusoutput 的最佳方法它返回命令的返回码和输出的元组。 subprocess模块是相当明显的,但是,它不能直接替代 getstatusoutput。有关 getstatusoutput 的相关问题中讨论了一个潜在的解决方案。 - 但是,我不打算重写原始函数(无论如何它的 LOC 少于 10),但想知道是否有更直接的方法。
最佳答案
没有直接替换,因为commands.getstatusoutput
是一个糟糕的 API;它结合了 stderr 和 stdout,但没有提供单独检索它们的选项。
您应该使用的便捷 API 是 subprocess.check_output
因为如果命令失败,它将引发异常。
否则,subprocess
确实显得有些不足。没有提供在单个调用中检索输出和状态的方法,但很容易解决;以下是链接问题的答案应该是:
def get_status_output(*args, **kwargs):
p = subprocess.Popen(*args, **kwargs)
stdout, stderr = p.communicate()
return p.returncode, stdout, stderr
stdout
和
stderr
一起使用
stderr=subprocess.STDOUT
.
关于python-3.x - 在 Python 3 中替换 getstatusoutput,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11344557/
我也是 Python 和编程的新手。我从谷歌的 python 类中知道如何使用以下命令运行外部命令: (status, output) = commands.getstatusoutput(cmd)
我想要这样的东西运行“ls”命令并在 STDOUT 上输出,并希望将相同的输出存储在变量中 对于长时间运行的进程,我需要在屏幕上看到执行输出,最后捕获变量 proc = subprocess.Pope
我创建了一个脚本来对一批文件运行测试脚本,已经整夜测试了两个晚上,但它只是在某个点挂起。 我想知道 commands.getstatusoutput() 是否是这里的问题,因为测试脚本具有繁重的日志记
在 related question 中,我问在哪里可以找到 C 函数“wait”的文档。这是试图找出 commands.getstatusoutput() 模块的返回码。 Stackoverflow
由于命令模块自 Python 2.6 起已弃用,我正在寻找替换 commands.getstatusoutput 的最佳方法它返回命令的返回码和输出的元组。 subprocess模块是相当明显的,但是
下面的代码在 Python 3.0 中已过时,被替换为 subprocess.getstatusoutput()。 import commands (ret, out) = commands.gets
我正在使用 python 命令模块运行 mongoimport 命令 status = utilities.execute(mongoimport) 在utilities.py中 def execut
我有一个 python 脚本,它必须调用 perl 脚本才能从远程服务器获取数据。Perl 脚本必须保留 Perl,它是第三方的,我在那里没有任何选择。我正在尝试删除以前的开发人员在代码中保留的所有过
我是一名优秀的程序员,十分优秀!