从嵌套bash调用中捕获python输出?

问题描述 投票:1回答:1

我有一些python函数可以打印一些输出状态消息。然后,我有一个bash脚本run_python.sh,该脚本按顺序调用这些python脚本,并且其中包含set -e参数,因此如果发生任何故障,它将失败。我需要使用参数列表调用该脚本(run_python.sh),我想捕获所有这些东西的输出

所以我有call_run_python.sh用参数调用run_python。

像这样call_run_python.sh 2>&1 | tee log.txt运行

我唯一的问题是,现在我没有在输出中得到python脚本的输出。是否有一些其他的重定向需要完成?我从echo中的run_python.sh语句获得输出,但是没有从同一脚本调用任何python输出

python bash stdout
1个回答
0
投票

您可以使用以下命令使输出不被缓冲

stdbuf -o 0 python test.py 2>&1 |  tee out1.txt

(请参阅:https://repl.it/@JoranBeasley/UnacceptableSlateblueStack

© www.soinside.com 2019 - 2024. All rights reserved.