python 自動清理資料夾舊檔案

2021-10-04 17:23:11 字數 1568 閱讀 1479

由於程式一直在不停地存圖,因此需要監測資料夾的大小,一旦超過指定大小則刪除一部分最早的。

即  測資料夾大小->若超過則將資料夾裡的檔案按最後修改時間排序->刪除一些最早的->刪的過程中監測資料夾大小是否符合要求

# -*- coding: utf-8 -*-

# # 開執行緒檢測資料夾大小,超過指定大小,則按檔案最後修改時間排序並刪除一部分舊

#import os

import threading

import time

#檔案按最後修改時間排序

def get_file_list(file_path):

dir_list = os.listdir(file_path)

if not dir_list:

return

else:

dir_list = sorted(dir_list, key=lambda x: os.path.getmtime(os.path.join(file_path, x)))

#print(dir_list)

return dir_list

#獲取資料夾大小

def get_size(file_path):

totalsize=0

for filename in os.listdir(file_path):

totalsize=totalsize+os.path.getsize(os.path.join(file_path, filename))

#print(totalsize / 1024 / 1024)

return totalsize / 1024 / 1024

# 1檔案目錄 2資料夾最大大小(m) 3超過後要刪除的大小(m)

def detect_file_size(file_path, size_max, size_del):

print(get_size(file_path))

if get_size(file_path) > size_max:

filelist = get_file_list(file_path)

for i in range(len(filelist)):

if get_size(file_path) > (size_max - size_del):

print ("del :%d %s" % (i + 1, filelist[i]))

os.remove(file_path + filelist[i])

#檢測線程,每個5秒檢測一次

def detectpicsize():

while true:

print('*****=detect**********==')

detect_file_size("../pic/", 30, 5)

time.sleep(5)

if __name__ == "__main__":

#建立檢測線程

detect_thread = threading.thread(target = detectpicsize)

detect_thread.start()

資料夾 Python自動整理資料夾

以下是具體的 name 自動把指定目錄下的檔案進行整理 author 唐朝品鑑 date 2020年8月25日 description 自動把指定目錄下的檔案進行整理,根據字尾名自動建立資料夾,並把對應的檔案移動到對應資料夾中 import os from os import path 以下是具體的...

shell指令碼清理資料夾

做匯出檔案時檔案上傳到了專案下,檔案匯出之後已經沒用了,時間長會占用伺服器磁碟,所以每天晚上定時清下,做乙個小demo.上傳的檔案放在 日期格式的目錄下 2019 03 04 第一步 寫shell指令碼刪除資料夾 給指令碼檔案執行許可權 bin bash 清理今天所產生的匯出檔案 time1 dat...

PYTHON之自動整理資料夾。

目錄簡介 建立檔案型別 建立檔案型別目錄 移動檔案至指定目錄 相信各位朋友在工作的時候會遇到以下情況,資料夾放了很多態別的檔案,不想一一將它們區分放在同型別的同資料夾中.太繁瑣了.如果真的要乙個乙個移動或者多選剪下貼上,累了,毀滅吧。今天,學到乙個小技巧,用python,自動整理資料夾。建立當前資料...