• python的subprocess模块


    可以执行shell命令的相关模块和函数有:os.system  os.spawn  os.popen等

    call方法:执行命令,返回状态码。shell = True意思是允许shell命令是字符串形式。

    check_call方法:执行命令,如果执行状态是0,则返回0,否则抛出异常。

    check_output方法:执行命令,如果状态码是0, 则返回执行结果,否则抛出异常

    Popen方法:用于执行负责的系统命令

    参数:

      args:shell命令,可以是字符串或序列类型

      bufsize:指定缓冲。0无缓冲,1行缓冲,其他缓冲区大小,负值 系统缓冲。

      stdin  stdout  stderr:分别表示程序的标准输入、标准输出、错误句柄

      preexec_fn: 只在Unix平台下有效,用于指定一个执行对象(callable object),它将在子进程运行之前被调用。

      close_sfs:在windows平台下,如果close_fds被设置为True,则新创建的子进程将不会继承父进程的输入、输出、错误管道。

      cwd:用于设置子进程的当前目录。

      env:用于指定子进程环境变量。如果env=None,子进程的环境变量将从父进程中继承。

      universal_newlines: 不同系统换行符不同, True表示同意使用

      startupinfo与createionflags只在windows下有效。将被传递给底层的CreateProcess()函数,用于设置子进程的一些属性,如:主窗口的外观,进程的优先级等

    import subprocess
    
    while True:
        cmd = input('>>:')
        p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
        out, err = p.stdout.read(), p.stderr.read()
        res = out if out else err
        print(res.decode('gbk'))

    等多:http://blog.csdn.net/g457499940/article/details/17068277

  • 相关阅读:
    内部类
    this关键字
    封装
    构造方法
    类图
    StringBuffer
    String
    导包
    包名规范
    带参数的方法
  • 原文地址:https://www.cnblogs.com/caibao666/p/6694618.html
Copyright © 2020-2023  润新知