如果只是简单地执行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