本文记录了两种方法,用于对vs目录的清理工作,这两种方法都是用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日更新版本
#-*- 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)
基于文件扩展名的清理脚本:
#-*- 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