首页 > 解决方案 > 记录循环的脚本的开始和结束时间

问题描述

我有一个 .py 文件,它通过 bash 脚本循环,如下所示:

 while True:
        text = "app cli -- some parameters -- email, password and body for a message"
        os.system(text)

我从 bash 运行它,我只能通过在 bash 中输入 kill -9 pid 来阻止它不断发送消息

我的问题是,当我将它作为脚本启动并从 bash 结束时,我如何记录开始和结束时间(结束时间意味着我终止进程的时间)以及消息/循环的数量(频率)。我会有调整我的python脚本还是我必须在运行时调整我的命令?如何?

我也确信有一种更优雅的方式来做我想做的事情,我只是一个初学者..

我唯一能做的就是计算一次发送一条消息需要多长时间..这并没有真正的帮助..

标签: pythonlinuxbashshelllogging

解决方案


要记录时间,您可以使用time命令 (Unix)。

例如,如果我运行这个程序:

iterations = 0
while True:
        // do something
        iterations+=1
        print iterations 

使用以下命令调用脚本:

时间 python myscript.py

之后,假设您使用Cntr+C或任何其他强制停止来停止执行。您现在可以通过检查输出来检查运行脚本的时间量以及迭代次数,在我的例子中是:

7773
7774
7775
Traceback (most recent call last):
  File "script.py", line 5, in <module>
    print counter
KeyboardInterrupt


real    0m2.447s
user    0m0.109s
sys     0m0.234s

请注意,您可以在time命令文档中找到从中获得的三个时间值的含义


推荐阅读