首页 > 编程语言 >【python】subprocess 使用

【python】subprocess 使用

时间:2022-12-16 16:24:41浏览次数:42  
标签:subp python cmd subprocess PIPE 缓冲区 使用 进程

subprocess使用

import subprocess
p = subprocess.Popen('ls -l', shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, bufsize=1)
  1. bufsize: 缓冲区大小. 当创建标准流的管道对象时使用默认 -1.
    0: 不使用缓冲区
    1: 表示 行缓冲, 仅当 universal_newlines=True时可用, 也就是文本模式
    正数: 表示缓冲区大小
    负数: 表示使用系统默认的缓冲区大小
    
  2. Popen 对象方法
    1. poll(): 检查进程是否终止: 如果终止返回 returncode, 否则返回 None
    2. wait(): 等待子进程终止
    3. communicate(input,timeout): 和子进程交互, 发送和读取数据.
    4. terminate(): 停止子进程. 发送 SIGTERM信号到子进程
    5. kill(): 杀死子进程. 发送 SIGKILL信号到子进程
    
  3. 实例
    import time
    import subprocess
    
    def cmd(command):
    subp = subprocess.Popen(command,shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE,encoding="utf-8")
    subp.wait(2)
    if subp.poll() == 0:
        print(subp.communicate()[1])
    else:
        print("失败")
    
    
    
    cmd("java -version")
    cmd("exit 1")
    

标签:subp,python,cmd,subprocess,PIPE,缓冲区,使用,进程
From: https://www.cnblogs.com/jessecheng/p/16987657.html

相关文章

  • django数据模型db_constraint的使用详解
    ManyToMany参数((through,db_constraint))classBook(models.Model):name=models.CharField(max_length=20)authors=models.ManyToMany('Author',through='Score')......
  • 使用字符流完成文档的拷备 1216
    importjava.io.FileNotFoundException;importjava.io.FileReader;importjava.io.FileWriter;importjava.io.IOException;publicclassTest1{publicstaticvoidm......
  • STC51入门笔记(郭天祥C语言)---第二节:Keil 软件使用及流水灯设计
    作者:sumjess本章详细介绍单片机程序常用编译软件Keil的用法,包括用Kei建立工程、工程配置、C51单片机程序软件仿真、单步、全速、断点设置、变量查看等。同时还介绍如何......
  • 数据分析之pandas的使用
    pandas为什么学习pandasnumpy已经可以帮助我们进行数据的处理了,那么学习pandas的目的是什么呢?numpy能够帮助我们处理的是数值型的数据,当然在数据分析中除了数值型的数......
  • 有道惠惠购物助手和如意淘使用比较
    经历了“8.15”、“十一黄金周”和最近的光棍节,网上购物网站应该在之后的一些大节日都会成为“购物狂欢节”。虽说电商一直表态,不赚钱不要紧,但是作为消费者还是要擦亮眼睛。......
  • Qt设置软件的使用期限--转
    https://blog.csdn.net/qq_37033647/article/details/128001563 作者:billy版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处前言当我们发布商......
  • 字符输入流遍历读数据 使用字符数组容器 1216
    importjava.io.FileInputStream;importjava.io.IOException;importjava.io.InputStreamReader;publicclassTest4{publicstaticvoidmain(String[]args)throws......
  • 站群服务器使用linux系统有哪些优势?
    尽管我们熟知的Window系统和Linux看起来都占据了半壁江山,但我相信在大部分非专业IT人员的眼里,Windows应该还是占据着他们的内心,毕竟我们会花大量的时间才办公室电脑上进......
  • Python SQL 驱动程序 - pymssql
    PythonSQL驱动程序-pymssql前言pymssql官方地址:https://pypi.org/project/pymssql/一、下载pymssql不通的操作系统,不同的Python版本下载对应的pymssql注意:博主运......
  • python-面向对象三大特性
    python-面向对象三大特性封装继承多态封装'''封装 封装就是把类的属性和方法封装到类的内部,只能在内部使用,不能在类外部使用 把属性和方法前面加两个下划线,这......