zoukankan      html  css  js  c++  java
  • 删除所有的.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文件

          有如下代码:

    <job>
     
       <script language="javascript">
     
           WScript.Echo("Hello World!");
     
       </script>
     
    </job>

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

     

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

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

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

  • 相关阅读:
    如何使用shell脚本快速排序和去重文件数据
    centos7下搭建git和gitlab版本库
    Jenkins安装部署
    那日了狗的上半年的兼容性问题,下半年来解决。
    RecyclerView notifyDataSetChanged不起作用
    android通过BitmapFactory.decodeFile获取图片bitmap报内存溢出的解决办法
    java.lang.UnsatisfiedLinkError: Couldn't load hyphenate_av from loader dalvik.system.PathClassLoader
    android studio Error:java.lang.OutOfMemoryError: GC overhead limit exceeded
    apache https配置
    docker进入容器的方式
  • 原文地址:https://www.cnblogs.com/iteakey/p/3000767.html
Copyright © 2011-2022 走看看