python 获取subprocess实

发布时间:2019-08-27 08:03:28编辑:auto阅读(1783)

    import subprocess


    p = subprocess.Popen("ping www.baidu.com -n 6",shell=True,stdout=subprocess.PIPE)


    #一下面是第一种方法(使用时请先注释第二种方法)

    for i in iter(p.stdout.readline, b''):

        print i.rstrip()


    #下面是第二种方法(使用时请先注释第一种方法)

    returncode = p.poll() #用于检查子进程是否已经结束

    while returncode is None:

        print p.stdout.readline().strip()

        returncode = p.poll()

    print p.stdout.read() #由于上面都是一行一行的获取,有可能导致最后几行还没有获取到,所以最后直接输出所有

    print returncode


关键字