stdout.read() keeps returning same value code example

Example 1: python subprocess print stdout while process running

from subprocess import Popen, PIPE, CalledProcessError

with Popen(cmd, stdout=PIPE, bufsize=1, universal_newlines=True) as p:
    for b in p.stdout:
        print(b, end='') # b is the byte from stdout

if p.returncode != 0:
    raise CalledProcessError(p.returncode, p.args)

Example 2: python format subprocess output

import subprocess

output = subprocess.check_output("cat /etc/os-release", shell=True)
output = output.decode("utf-8")
print("Version info: ",output)

Tags:

Misc Example