删除工程中svn文件的脚本(Ruby版和Python版)

两种不同的语言,不同的表达!

Python脚本实现.

“”"
    File Name : clean.py
    File Date : 2009/11/5 14:22:56
    Author     : DannyLai
    Purpose     : Clean the svn files
             All svn projects have an hide directory “.svn”
             The python script purpose is to clean the .svn directory in svn projects.
    
“”"

import os
import stat

SVNPROJECT_DIR = “F:\\temp\\google-gdata”

def findSVNDir( path ) :
    for file in os.listdir( path ) :
        subpath = os.path.join( path, file )
        if os.path.isdir( subpath ) :
            if file == “.svn” :
                print subpath
                deleteSVNDir( subpath )
            else :
                findSVNDir( subpath )
                
def deleteSVNDir( path ) :
    for file in os.listdir( path ) :
        subpath = os.path.join( path, file )
        
        if os.path.isdir( subpath ) :
            deleteSVNDir( subpath )
        else :
            os.chmod( subpath, stat.S_IREAD | stat.S_IWRITE )
            os.remove( subpath )
            
    os.rmdir( path )

def cleanSVNDir( path ) :
    findSVNDir( path )

if __name__ == ‘__main__’ :
    cleanSVNDir( SVNPROJECT_DIR )

Ruby的脚本实现

=begin
    File Name : clean.rb
    File Date : 2009/11/5 14:22:56
    Author     : DannyLai
    Purpose     : Clean the svn files
             All svn projects have an hide directory “.svn”
             The ruby script purpose is to clean the .svn directory in svn projects.
    
=end

require “find”
require “fileutils”

SVNPROJECT_DIR = “F:\\temp\\fluint”

def cleanSVNDir()
    Find.find( SVNPROJECT_DIR ) do | path |
        if File.directory? path and path.include? “.svn”
            puts path
            FileUtils.rm_r path
        end
    end
end

cleanSVNDir()

Share and Enjoy:
  • Print this article!
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • LinkedIn
  • Live
  • MySpace
  • RSS
  • Slashdot
  • Technorati
  • TwitThis

Related posts:

  1. Python多线程

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word

Contact us

Admin: Bryan Wu