2009年1月16日星期五

python 获取 shell 命令的输出

有两种方法。
一种是Popen:

import subprocess
output = subprocess.Popen(['ls','-l'],stdout=subprocess.PIPE,shell=True).communicate()
print output[0]

 
另外一种则可返回状态与调用的shell命令的输出结果

import commands
status, output = commands.getstatusoutput('ls -l')
 
Thanks to sin :)
-----
延伸:通过 dir(commands) 可以得知,实际上 有 getoutput 这个只获取输出的简单方法的。

没有评论:

发表评论