Bash 脚本中 Python 命令的输出不完整

Bash 脚本中 Python 命令的输出不完整

这是我在这里发表的第一篇文章。

我正在创建一个简单的bash脚本,它应该运行python命令并邮寄输出。但是,每次通过 运行脚本时cron,都会丢失一半的python输出。然而,如果我在 shell 上手动运行相同的脚本,一切都会按预期工作。

bash 脚本是:

#!/usr/local/bin/python3

echo $(/usr/local/bin/python3 /home/tech2/myscript_v3_4-3.py -rs) > /home/tech2/weeklyreportoutput.txt

sleep 180

echo "Data Generated on $(date +%T_%d_%m_%y)" | mail -s "Data for Weekly SYNC $(date +%A_%F_%T)" -a /home/tech2/weeklyreportoutput.txt [email protected]

注意:python脚本运行最多 10 秒,输出不超过 100 行。我也尝试过 without echo,但在这种情况下python不带-rs参数运行。

任何帮助将非常感激。

答案1

为什么要运行 python 程序,捕获输出,然后回显(不带引号的)输出?做就是了

/usr/local/bin/python3 /home/tech2/myscript_v3_4-3.py -rs > /home/tech2/weeklyreportoutput.txt

您的方法的主要问题之一是换行符将被空格替换。

相关内容