【发布时间】:2021-04-28 22:16:40
【问题描述】:
我在指定时间运行 python 脚本并在另一个指定时间停止它。这两项任务都是使用 cron 完成的。
python 脚本的工作是将一段文本写入文本文件(比如每 5 秒)。在某个时间,将发生第二个 cron 作业,这将停止运行 python 脚本。我的目标是在第二个 cron 作业停止正在运行的 python 程序后(在指定时间),在文本文件中查看 python 脚本的输出。
一开始我尝试了以下命令:kill $(pgrep -f cron_test.py)
但是,我发现每当我在结束 python 脚本时查看文本文件的内容时,什么都不会写入。
然后我尝试了以下命令作为替代:kill -INT $(pgrep -f cron_test.py)
这个命令似乎可以让我停止运行 python 程序,同时写入文件。
我不明白为什么替换命令允许我写入文件,而我尝试的初始命令不允许。任何帮助表示赞赏。
【问题讨论】:
-
kill -INT pid发送一个 SIGINT 信号,另一方面,kill pid发送一个 SIGTERM。
标签: python bash shell unix command