我想知道是否可以在 Python 脚本中运行 bash 脚本并使 bash 脚本输出“实时”(不是在 Python 脚本运行 bash 脚本之后,我知道该怎么做)。
您可能会问我为什么要使用 Python 脚本:实际上我想构建一个漂亮的 CLI 界面,并且我正在使用 Inquirer 来做到这一点。该界面允许用户执行实际使用 bash 脚本执行的任务。这就是我不使用执行其他脚本的 bash 脚本的原因。
最佳答案
您可以使用以下实现来实时获取shell脚本的STDOUT。
代码:
cmd="whoami"
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, bufsize=1)
for line in iter(p.stdout.readline, b''):
print(line)
p.stdout.close()
p.wait()
输出:
>>> python3 test.py
b'milanbalazs\n'
关于python - 在 Python 脚本中运行带有 "live"输出的 bash 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57955127/