账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    通过subprocess实时读取脚本的输出内容
    41
    0

    我想通过subprocess实时获取脚本的输出内容
    下面是我的脚本

    test_echo.py

    import time
    for i in range(10):

    print(i)
    time.sleep(0.5)

    下面是读取的脚本:

    脚本名字get_output.py

    import subprocess

    cmd = '/root/test_echo.py'
    p = subprocess.Popen(['python',cmd],stdout=subprocess.PIPE, stderr=subprocess.STDOUT,bufsize=1)
    while 1:

    line = p.stdout.readline()
    if line != '' and p.poll() is None:
        print line
    else:
        break

    我用pycharm调试上面的内容可以正常的逐行(实时)读取test_echo的内容,但是我把脚本放到centos或者mac上的shell环境下通过python get_output.py它就不能逐行读取,而是等test_echo.py的结果执行完一下 输出的, 我想知道怎么才能在终端里面也能像pycharm里面一样逐行读取,还是需要怎么配置subprocess

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 黍米为真 普通会员 1楼
      502 Bad Gateway

      502 Bad Gateway


      nginx
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部