本文記錄了兩種方法,用於對vs目錄的清理工做,這兩種方法都是用python2.7實現的,一個是基於文件的擴展名,一個是基於文件的大小:python
基於文件大小的清理腳本:python2.7
#-*- coding:utf-8 -*- import os import string def del_files(dir,topdown=True): for root, dirs, files in os.walk(dir, topdown): for name in files: if os.path.getsize((os.path.join(root, name)))>2097152: #大於2M的文件 print(os.path.join(root, name)) print "delete..... " os.remove(os.path.join(root, name)) print "delete complicated" # print(os.path.getsize((os.path.join(root, name)))) dir = os.getcwd() del_files(dir)
2013,10,1日更新版本blog
#-*- coding:utf-8 -*- import os import string def del_files(dir,topdown=True): for root, dirs, files in os.walk(dir, topdown): for name in files: #刪除大文件 if os.path.getsize((os.path.join(root, name)))>102400: #大於100K的文件 print(os.path.join(root, name)) print "delete..... " os.remove(os.path.join(root, name)) print "delete complicated" for dirname in dirs: #清空空目錄 try: os.removedirs(os.path.join(root, dirname)) except (WindowsError): pass # print(os.path.getsize((os.path.join(root, name)))) dir = os.getcwd() del_files(dir)
基於文件擴展名的清理腳本:utf-8
#-*- coding:utf-8 -*- import os import string def del_files(dir,topdown=True): for root, dirs, files in os.walk(dir, topdown): for name in files: pathname = os.path.splitext(os.path.join(root, name)) if (pathname[1] != ".cpp" and pathname[1] != ".vcproj" and pathname[1] != ".sln" and pathname[1] != ".hpp" and pathname[1] != ".h" and pathname[1] != ".vsprops" and pathname[1] != ".py"): os.remove(os.path.join(root, name)) #print(os.path.join(root,name)) dir = os.getcwd() print(dir) del_files(dir) #will delete the file after run