python 调用shell命令三种方法

1.用os.system(cmd)   不过取不了返回值

2.用os.popen(cmd)   要得到命令的输出内容,只需再调用下read()或readlines()等 如a=os.popen(cmd).read()

3.用 commands 模块。其实也是对popen的封装。此模块主要有如下方法

commands.getstatusoutput ( cmd ) 返回 (status, output).
commands.getoutput ( cmd ) 只返回输出结果
commands.getstatus ( file ) 返回 ls -ld file的执行结果字符串,调用了getoutput,不建议使用此方法.
>>> import commands >>> commands.getstatusoutput('ls /bin/ls') (0, '/bin/ls') >>> commands.getstatusoutput('cat /bin/junk') (256, 'cat: /bin/junk: No such file or directory') >>> commands.getstatusoutput('/bin/junk') (256, 'sh: /bin/junk: not found') >>> commands.getoutput('ls /bin/ls') '/bin/ls' >>> commands.getstatus('/bin/ls') '-rwxr-xr-x 1 root 13352 Oct 14 1994 /bin/ls'

你可能感兴趣的:(shell,python,cmd,File,import,output)