如果只是简单地执行shell命令,可以这样:
import os
os.system('ls')
得到shell的输出(不管标准输出或是错误输出)
import commands
result= commands.getstatusoutput(shellcommand)
output= result[1]
但是无法输入信息到shell,subprocess还是要更好用一些,可以和shell交互,因为重定向了stdin, stdout, stderr
import subprocess
p = subprocess.Popen(['cmd', 'arg'], stdin=subprocess.PIPE, stdout=subprocess.PIPE)
output = p.communicate('foo')[0] #传递给shell的字符串
print output