思路: Python的實現 要點: ...
思路:
- 遍歷文件夾下麵的文件夾
- 如果文件夾名稱等於".svn",則修改文件夾的屬性(因為".svn"的文件都是只讀的,你不能直接刪除)
- 刪除此文件夾
- 如果文件夾名稱不等於".svn",則遞歸上面的方法
Python的實現
代碼 import os import shutil import os.path import stat rootdir="F:\\work\\Test" for parent,dirnames,filenames in os.walk(rootdir): #遍歷文件夾下麵的所有文件夾 for dirname in dirnames: if dirname=='.svn': strfilepath=parent+os.sep+dirname if os.path.isdir(strfilepath): os.system('attrib -r ' + parent + '\\*.* /s')#設置本文件夾可寫 os.system('attrib -r ' + strfilepath + '\\*.* /s')#設置父文件夾可寫 shutil.rmtree(parent+os.sep+dirname)#刪除此文件夾
要點:
- Walk在os模塊下麵,用來根據提供的文件夾生成一個generator。每次可以得到一個三元tupple,其中第一個為起始路徑,第二個為起始路徑下的文件夾,第三個是起始路徑下的文件。
- os.system('attrib -r ' + parent + '\\*.* /s') 設置文件夾可寫
- shutil.rmtree(parent+os.sep+dirname) 刪除文件夾(即使文件夾裡面有文件)