代码
#!/usr/bin/python
# -*- coding: utf8 -*-
import sys, os, stat
def walk(path):
for item in os.listdir(path):
subpath=os.path.join(path, item)
mode=os.stat(subpath)[stat.ST_MODE]
if stat.S_ISDIR(mode):
if item==".svn":
print "Cleaning %s ..." % subpath
print "%d deleted" % purge(subpath)
else:
walk(subpath)
def purge(path):
count=0
for item in os.listdir(path):
subpath=os.path.join(path, item)
mode=os.stat(subpath)[stat.ST_MODE]
if stat.S_ISDIR(mode):
count+=purge(subpath)
else:
os.chmod(subpath, stat.S_IREAD|stat.S_IWRITE)
os.unlink(subpath)
count+=1
os.rmdir(path)
count+=1
return count
if len(sys.argv)!=2:
print "Usage: python SVNClean.py path"
sys.exit(1)
walk(sys.argv[1])