我有一些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输出
您可以使用以下命令使输出不被缓冲
stdbuf -o 0 python test.py 2>&1 | tee out1.txt
(请参阅:https://repl.it/@JoranBeasley/UnacceptableSlateblueStack)