linux上python中的os.system(“”)和commands.getstatusoutput(“”)之间有什么不同?

linux上python中的os.system(“”)和commands.getstatusoutput(“”)之间有什么不同?,python,Python,linux上python中的os.system“”和commands.getstatusoutput“”之间有什么不同 如果你能举个例子,我将非常感激 感谢操作系统。系统运行external shell命令并返回一个整数,如果成功,则返回0;如果失败,则返回任何其他值。如果正在运行的命令将某些内容发送到stdout或stderr,则只会打印,但不能将其分配给变量 command.getstatusoutput执行与os.system相同的操作,并返回一个元组,其中状态代码整数是第一个元素,状态消

linux上python中的os.system“”和commands.getstatusoutput“”之间有什么不同

如果你能举个例子,我将非常感激

感谢操作系统。系统运行external shell命令并返回一个整数,如果成功,则返回0;如果失败,则返回任何其他值。如果正在运行的命令将某些内容发送到stdout或stderr,则只会打印,但不能将其分配给变量

command.getstatusoutput执行与os.system相同的操作,并返回一个元组,其中状态代码整数是第一个元素,状态消息是第二个元素

在幕后,command.getstatusoutput做的事情与os.system不同。它使用操作系统模块。它特别使用os.popen,将所有stderr输出重定向到stdout输出,并从stdout读取状态消息


必须指出的是,subprocess模块是执行上述两个命令所能执行的任何操作的新方法。

检查它们的文档,不要使用其中任何一个。模块是一条路要走。