删除所有的.svn文件夹

本文介绍三种批量删除.svn文件夹的方法:通过命令行、注册表编辑器及JavaScript脚本,实现高效清理,适用于项目迁移等场景。

删除所有的.svn文件夹

         工作中要把一个项目迁移到另外的svn目录中,遇到一个问题,需要先把原来的.svn删除,然后再增加到新的svn中,开始手动删除,但是发现太耗时耗力了,网上搜了几种删除的方法,自己都试了一遍,总结了一下,写出来备忘。

一、在Dos窗口中运行如下命令

  
for / r <你项目的路径> %i in (.svn) do rd / s / q %i

二、将“Delete SVN Folders”操作添加到右击菜单中

建立一个文本文件,名称随意,后缀为.reg,内容如下:

?
Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]
@= "Delete SVN Folders"
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
@= "cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""

保存之后,双击这个reg文件。成功后,在每一个文件夹上点击右键都会有一个“Delete SVN Folders”的选项,点击这个选项,即可删除这个文件夹下面所有的.svn文件夹

三、编写js程序

程序如下:

js code
if (WScript.Arguments.length == 0) {
    WScript.Echo("请输入参数!");
    WScript.quit();
}
 else {
    var path = WScript.Arguments(0);
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var rootFolder = fso.getFolder(path);
    var folderList = new Array();
    folderList.push(rootFolder);

    var folder, fc;
    while (folderList.length > 0) {
        folder = folderList.pop();
        fc = new Enumerator(folder.SubFolders);
        while (!fc.atEnd()) {
            if (fc.item().name == ".svn") {
                fso.deleteFolder(fc.item().path, true);
            }
            else {
                folderList.push(fc.item());
            }
            fc.moveNext();
        }
    }
    WScript.Echo("完成!");
}


       将这个程序保存为后缀为.js的文件,如delsvn.js

         运行cscript.exe delsvn.js XXX

         例如:cscript.exe C:\Users\lhc\Desktop\delsvn.js E:\Union

                   其中C:\Users\lhc\Desktop\delsvn.js是此js放在桌面上

                   E:\Union下面的.svn文件夹都会删除

         编写此js时注意:

    1、  我们输出内容用的是WScript.Echo(),而不用alert()

      如果使用alert(),会报缺少对象的错误,因为alert()是属于浏览器(DOM)的函数,JavaScript中没有这个函数

    2、  可执行js文件

      有如下代码:

把这个代码保存为后缀为.wsf的文件jstest.wsf,双击可运行,如下图:

 

如果把WScript.Echo("Hello World!");这行代码换成上面的删除.svn文件夹的程序,也可以运行,不过由于这个程序需要输入参数,可以以以下方式运行:

cscript C:\Users\lhc\Desktop\jstest.wsf E:\Union

个人认为第二种最方便,一劳永逸。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值