感恩三周年,极客节签到送极客币、免费送书、VIP买一送一、职业学院5折优惠,快乐享不停!

Python调用shell命令有哪些方法

驯龙高手 Python 数据结构初识 最后由 极客学院-shao 于2015年08月03日回复

  • 4 回答
  • 2.2k 浏览

Python调用shell命令有哪些方法,在编程中有用到但是不是很清楚,最好举个例子说明一下比较好。

  • 鹰之水舞 2015年07月06日 回答 #1楼
  • 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'

  • 0 评论
  • 韦玮 2015年07月30日 回答 #2楼
  • 您好,调用shell命令的方法上面其他学员帮描述了,首先感谢。其实,如果您想知道的是如何从Python源码模式进入Python的shell命令行模式,那么可以直接这样,打开对应Python源码,直接按F5方可进入。

  • 0 评论