用Python脚本来删除指定容量以上的文件的教程
文件多了乱放,突然有一天发现硬盘空间不够了,于是写了个python脚本搜索所有大于10MB的文件,看看这些大文件有没有重复的副本,如果有,全部列出,以便手工删除
使用方式加一个指定目录的参数
比如pythonredundant_remover.py/tmp
主要用到了stat模块,os、sys系统模块
importos,sys #引入统计模块 fromstatimport* BIG_FILE_THRESHOLD=10000000L dict1={}#filesize做key,filename做value dict2={}#filename做key,filesize做value deftreewalk(path): try: foriinos.listdir(path): mode=os.stat(path+"/"+i).st_mode ifS_ISDIR(mode)<>True: filename=path+"/"+i filesize=os.stat(filename).st_size iffilesize>BIG_FILE_THRESHOLD: iffilesizeindict1: dict2[filename]=filesize dict2[dict1[filesize]]=filesize else: dict1[filesize]=filename else: treewalk(path+"/"+i) exceptWindowsError: pass defprintdict(finaldict): fori_sizeinfinaldict.values(): printi_size forj_nameinfinaldict.keys(): iffinaldict[j_name]==i_size: printj_name print"\n" if__name__=="__main__": treewalk(sys.argv[1]) printdict(dict2)