当我手动终止特定的.py脚本时,如何仍然使用函数



我写了一个代码,如果有人打开并访问特定的文件,它会检查文件并发送邮件这是代码:

import atexit
import smtplib
from os import stat
import signal

email = "******"
password = "******"
message = "File has been touched you are busted"
f = "check.txt"
file_last_access_time = stat(f).st_atime

def sendemail():
s = smtplib.SMTP('smtp.gmail.com', 587)
s.starttls()
s.login(email, password)
s.sendmail(email, email, message)
print('Mail Sent')
s.quit()
return;

while True:
current_access_time = stat(f).st_atime
if file_last_access_time != current_access_time:
sendemail()
break

atexit.register(sendemail())
signal.signal(signal.SIGTERM, sendemail())
signal.signal(signal.SIGINT, sendemail())

我正在通过终端在Ubuntu上运行这个.py脚本。我正试图找到一种方法,使代码仍然向我发送电子邮件,即使我使用kill{pid}。当我正在扼杀这个过程时,它不会给我发电子邮件。我很想得到一些帮助,让它工作

检查此项。根据你的描述,我认为你想做点什么来回应杀人信号。

相关内容

  • 没有找到相关文章

最新更新