os.system
在一个子终端运行系统命令,而不能获取命令执行后的返回信息,执行成功时返回值0
>>> import os
>>> os.system('whoami')
markzhang
0
os.popen
执行命令而且返回执行后的信息对象
>>> me = os.popen('whoami')
>>> print me.read()
markzhang
>>> import commands
>>> dir(commands)
['__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'getoutput', 'getstatus', 'getstatusoutput', 'mk2arg', 'mkarg']
>>> commands.getoutput('whoami')
'markzhang'
运用对线程的控制和监控,将返回的结果赋于一变量,便于程序的处理。
>>> import subprocess
>>> out = subprocess.call('crontab -l',shell=True)
crontab: no crontab for markzhang
>>> out = subprocess.Popen(['crontab','-l'],stdout=subprocess.PIPE)
>>> crontab: no crontab for markzhang
>>>
原文:https://www.cnblogs.com/mark-zh/p/10870681.html