透過Python查詢檔案的大小及使用獲取到SIZE大小進行刪除,此程式以0K檔案為刪除目標。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | import os import time
#找路徑下所有檔案(含子目錄下) def Find_dir(path): #開啟文字檔案,並寫入目前時間。 New_File = open(path+'Fileremove.txt','a+') New_File.write(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())+'\n') try: # 取得指定路徑下的所有檔案及目錄名稱名稱 for root, directorys, files in os.walk(path): for file in files: # 合併路徑及取得的路徑檔案及目錄名稱 full_path = os.path.join(root, file) #讀取目前檔案的Size。 File_Size = os.path.getsize(full_path) #判斷檔案大小的單位。 if File_Size > 1024*1024*1024: File_Size= round(File_Size/1024/1024/1024,2) Unit = 'GB' elif File_Size > 1024*1024 : File_Size = round(File_Size / 1024 / 1024,2) Unit = 'MB' elif File_Size > 1024 : File_Size = round(File_Size / 1024,2) Unit = 'KB' else: Unit = 'K' print(full_path,File_Size,Unit) #掃描到檔名為Fileremove.txt,不作動作。 if file =='Fileremove.txt': continue # 刪除0K的檔案並將檔名寫入文字檔案中。 elif File_Size == 0 : New_File.write(full_path+'\n') os.remove(full_path) #關閉檔案。 New_File.close() except Exception as e: # 例外顯示。 print(f'An Error occurred:', e) if __name__ == '__main__': #設定作業路徑。 path='D:\\Train\\' Find_dir(path) |
結果:
沒有留言:
張貼留言