Remove .SVN file by Python

本文提供了一段Python脚本,用于递归地清理指定路径下的所有.svn目录及其内容。该脚本通过遍历指定路径,识别并删除所有的.svn文件夹,适用于需要清理版本控制系统遗留文件的场景。
ContractedBlock.gifExpandedBlockStart.gif代码
#!/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])

 

转载于:https://www.cnblogs.com/allenblogs/archive/2010/09/14/1826005.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值