1、【Python运维脚本】Python 按时间删除和清空文件
删除和清空文件,用shell的话一条命令就够了,Python要一堆命令。
但是为了学习Python,所以用于实战,就得这么干了。
Python 按时间删除和清空文件
#!/usr/bin/python # coding=utf8 # author: chentufeng # 该脚本用于清空文件和删除文件 import os, sys import time def truncate_file(path, time_tmp): """按时间删除文件和清空文件 :param path 目录 :param time_tmp 多少天前的文件 int """ start_char = "rocketmq_client.log" if not os.path.isdir(path): print("目录不存在,程序退出.....") sys.exit() # 过去的时间 past_time = int(time.time()) - (3600 * 24 * time_tmp) os.chdir(path) filelist = os.listdir(path) #print(filelist) if filelist is None: print("没有文件,不做操作") sys.exit(0) #遍历文件 for file in filelist: # 获取文件修改时间 modify_time = os.path.getmtime(file) #print(modify_time) filename = path + "/" + file #rocketmq_client.log 开头的清空 if modify_time < past_time: if file.startswith(start_char): print("正在清空:" + filename) with open(file, "r+") as f: f.truncate() else: #否则删除文件 print("正在删除文件:" + filename) os.remove(file) else: continue if __name__ == "__main__": # 开头字符串 truncate_file("/root/logs/rocketmqlogs", 1) truncate_file("/root/logs/consolelogs", 3)