很多时候我们需要根据某些文件是否正常生成,来判断程序是否正常执行。一般大厂可能会有自己的一些报警系统来帮助算法同学监测这类问题。那其他同学就需要自己来写个程序来监测了。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import commands
from datetime import datetime
def check_file(filename, time_threshold=12):
# 获取文件修改时间
cmd = '''stat {} | grep -i Modify | awk -F. '{print $1}' | awk '{print $2 " " $3}' '''.format(filename)
modify_time = commands.getoutput(cmd)
modify_time = datetime.strptime(modify_time,'%Y-%m-%d %H:%M:%S')
# print modify_time
# 获取当前时间
now = datetime.now()
# print now
time_gap = (now - modify_time).seconds/3600.0 # 小时
print "时间差: ", time_gap
if time_gap > time_threshold:
do anything you need