• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

windows下清理svn文件夹的python脚本

python 水墨上仙 2917次浏览

windows下清理svn文件夹的python脚本


# -*- coding: cp936 -*-  
# 注明字符集  
# file:clearsvn.py 删除svn目录下的所有svn文件  
  
import os,win32con,win32api  
  
#清除文件名头尾的引号  
def trimpath(pathin):  
  #如果头部存在引号  
  if pathin[0] == '\"':  
    pathin = pathin[1:]  
      
  #如果尾部存在引号  
  if pathin[(len(pathin)-1)] == '\"':  
    pathin = pathin[:(len(pathin)-1)]  
    
  #返回清理首尾后的字串    
  return pathin  
  
  
def clearsvn(path):  
  #列出子目录  
  filenames = os.listdir(path)  
    
  for singlefile in filenames:  
      
    pathfile = path + '\\' + singlefile  
    #子目录判断是否为svn文件夹  
    if os.path.isdir(pathfile):  
        
      if singlefile.find('.svn') != -1:  
        #是的话清理文件夹后删除文件夹  
        deltree(pathfile)  
          
        print "清理目录:" + pathfile  
          
        #修改属性,同linux下chmod  
        win32api.SetFileAttributes(pathfile, win32con.FILE_ATTRIBUTE_NORMAL)  
        #api删除空文件夹  
        os.rmdir(pathfile)  
      else:  
        #不是的话递归到下一层  
        clearsvn(pathfile)  
          
          
def deltree(path):  
    
  filenames = os.listdir(path)  
  #遍历所有子目录和文件夹  
  for singlefile in filenames:  
      
    pathfile = path + '\\' + singlefile  
    #如果是文件夹的话递归清理  
    if os.path.isdir(pathfile):  
        
      print "清理目录:" + pathfile  
      #修改属性,同linux下chmod  
      win32api.SetFileAttributes(pathfile, win32con.FILE_ATTRIBUTE_NORMAL)  
      #递归到下一层  
      deltree(pathfile)  
      #api删除空文件夹  
      os.rmdir(pathfile)  
    #如果是文件的话则删除    
    if os.path.isfile(pathfile):  
        
      print "删除文件:" + pathfile  
      #修改属性,同linux下chmod  
      win32api.SetFileAttributes(pathfile, win32con.FILE_ATTRIBUTE_NORMAL)  
      #api删除文件  
      os.remove(pathfile)  
  
          
if __name__=="__main__":  
  #提示用户输入目录路径  
  pathin = raw_input("拖放要删除文件所在目录到此:")  
    
  #清理字串首尾的引号  
  path = trimpath(pathin)  
    
  #确认文件夹  
  choose = raw_input("需要清理的文件夹为 [ " + path + " ] y/n?:")  
    
  if choose == 'y' or choose == 'Y':  
    #检查用户输入的目录是否存在,如果不存在则退出程序  
    if os.path.exists(path)==False:  
      print "输入的目录不存在!"  
      os._exit(1)  
  
    #遍历子文件夹进行删除  
    clearsvn(path)  
      
    print "清理完成!"  
    #运行结束暂停,显示友好信息  
    os.system('pause') 


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明windows下清理svn文件夹的python脚本
喜欢 (0)
加载中……