python 外部命令执行--OS

发布时间:2019-09-07 08:12:33编辑:auto阅读(1426)

     Python 也可以通过os、subprocess执行外部shell命令对POSIX类型系统进行操作。

     os 一个很强大的命令,可以通过os下的一些方法去执行shell命令,并且可以对对象执行完的标准输出、标准输入和标准错误输出进行操作。


    1.os.system

       """"

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    """os.system()方法没有标准输出、标准输入和标准错误输出"""
    import os
    def posix():
        os.system('ifconfig')
    if __name__ == "__main__":
        posix()


    2.os.popen()、os.popen2()、os.popen3

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    import os
    """
    os.popen()   #标准输出
    os.popen2()  #标准输入和标准输出
    os.popen3()  #标准输入、标准输出和标准错误输出
    """
    def posixOpen():
        stdout = os.popen('ifconfig')
        data = stdout.read()
        return data
    def posixPopen2():
        stdin, stdout = os.popen2('sort')
        stdin.write('a\n')  #插入数据
        stdin.write('b\n')
        stdin.write('g\n')
        stdin.write('c\n')
        stdin.close()
        data = stdout.read() #标准输出
        return data
    def posixPopen3():
        stdin, stdout, stderr = os.popen3('df -q')  #输入一个错误命令
        data = stderr.read()
        return data
    def main():
        posixOpen()
        posixOpen2()
        posixOpen3()
    if __name__ == "__main__":
        main()


关键字