Python清除NodeModules文件夹脚本
用于清除node_modules文件夹的脚本。copy的
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 46 47 48 49 50 51
| import os import time import shutil
def get_dirsize(dirPath): size = 0 for root, dirs, files in os.walk(dirPath): for file in files: try: name = os.path.join(root, file) temp = os.path.getsize(name) size += temp except IOError: error = "文件异常" return size / (1024*1024)
def auto_delete(file_dir,target,days): sum_size = 0 for root, dirs, files in os.walk(file_dir): for dir in dirs: if dir == target: abs_dir = os.path.join(root,dir) if(abs_dir.count(target) > 1): break diff_time = (time.time() - os.path.getmtime(abs_dir))/60/60/24 size = get_dirsize(abs_dir) if diff_time > days: shutil.rmtree(abs_dir) print("已经删除:%s"%(abs_dir)) print("文件夹大小:%.2fMB"%(size)) print("上次更新时间距离现在已经过去%.2f天"%(diff_time)) print("--------") sum_size += size
print("已自动删除%d天内未更新的%s文件夹,共节省%.2fMB空间"%(days,target,sum_size))
root = "/Users/XXXX/xxxx"
target = "node_modules"
days = 30 auto_delete(root,target,days)
|