(一)---------------------------------------------------------------------------------------------------------------------

需要两步:
1./使用del命令删除所有包含.svn名的文件
del * /S /F /Q "*^.svn*"
"^"在dos中用来标识特殊符号,/参数可以查看命令帮助,help del或del /?
 
2.使用window搜索功能,搜索所有含.svn名的文件,将搜索结果全部删除
 
大功告成!第2步是为了弥补第1步del命令不能删除本身文件夹的缺点(rd命令又不能遍历子目录,只能全删)
 
 
PS:
2013-8-6 记录
这是自己写的,今天发现有点缺陷,主要是第一步是命令用法问题,第二部还是有用。第一步会导致某些文件名字带.svn字符的也会被误删,这样不行。
找到一篇文章可以去看另一篇文章:删除所有的.svn文件夹
 

(二)---------------------------------------------------------------------------------------------------------------------

http://www.cnblogs.com/fuhongxue2011/archive/2011/03/31/2001393.html删除所有的.svn文件夹

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

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


for /r <你项目的路径> %i in (.svn) do rd /s /q %i
示例:
//CMD下,递归删除当前目录下名为.svn的文件夹
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程序

程序如下:


1 if (WScript.Arguments.length == 0) {
2 WScript.Echo("请输入参数!");
3 WScript.quit();
4 }
5  else {
6 var path = WScript.Arguments(0);
7 var fso = new ActiveXObject("Scripting.FileSystemObject");
8 var rootFolder = fso.getFolder(path);
9 var folderList = new Array();
10 folderList.push(rootFolder);
11 
12 var folder, fc;
13 while (folderList.length > 0) {
14 folder = folderList.pop();
15 fc = new Enumerator(folder.SubFolders);
16 while (!fc.atEnd()) {
17 if (fc.item().name == ".svn") {
18 fso.deleteFolder(fc.item().path, true);
19 }
20 else {
21 folderList.push(fc.item());
22 }
23 fc.moveNext();
24 }
25 }
26 WScript.Echo("完成!");
27 }
 

将这个程序保存为后缀为.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文件

      有如下代码:

1
2
3
4
5
6
7
8
9
<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

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

window下删除所有带.svn文件夹及文件,删除所有的.svn文件夹的更多相关文章

  1. Java基础---Java---IO流-----File 类、递归、删除一个带内容的目录、列出指定目录下文件夹、FilenameFilte

    File 类 用来将文件或者文件夹封装成对象 方便对文件与文件夹进行操作. File对象可以作为参数传递给流的构造函数 流只用操作数据,而封装数据的文件只能用File类 File类常见方法: 1.创建 ...

  2. xp下删除windows7,无法删除windows7文件夹,无法删除windows7文件,双系统卸载,取得文件权限

    http://blog.csdn.net/lanmanck/article/details/5722050 ---------------------------------------------- ...

  3. 导出不带.svn的文件夹或者是不含.class的文件

    转载自:http://blog.csdn.net/z278718149/article/details/21537395 如何导出不带.svn的文件夹或者是不含.class的文件 在工作环境中,有的时 ...

  4. linux下怎么删除名称带空格的文件

    linux下怎么删除名称带空格的文件-rm 'mysql bin.000005' 用引号把文件名括起来 某些情况下会出现名称带空格的文件, 如果想要删除的话,直接用rm mysql bin.00000 ...

  5. window下强制删除文件

    在windows系统下,有时候总有一下没办法删除的文件,这个时候可以使用一个命令行脚本强行删除 步骤如下: 把以下代码保存为一个delete.txt文件 DEL /F /A /Q \\?\%1 RD ...

  6. window下批量删除指定后缀文件

    例子: 批量删除当前路径下后缀为 .jpg和 .json del /a /f /s /q "*.jpg" "*.json" *为通配符/a /f 是强制删除所有 ...

  7. cwRsync window下的跨服务器的文件同步

    cwRsync 是window下的文件同步软件,可以跨服务器运行,第一次运行的时候是全部备份同步,之后的同步采用的是增量同步 这个软件分为服务端和客户端. 服务器是需要同步的文件源, 客户端相当于是备 ...

  8. SVN配置以及自己主动部署到apache虚拟文件夹

    SVN配置以及自己主动部署到apache虚拟文件夹 一.VisualSVN server 服务端和TortoiseSVNclient下载 VisualSVN下载:http://subversion.a ...

  9. linux 下用find命令查找文件,rm命令删除文件

    linux 下用find命令查找文件,rm命令删除文件. 删除指定目录下指定文件find 要查找的目录名 -name .svn |xargs rm -rf 删除指定名称的文件或文件夹: find -t ...

随机推荐

  1. Linux 提权常用命令集

    转载:http://www.myhack58.com/Article/html/3/8/2017/83236.htm 0x00 操作系统相关 操作系统类型版本 cat /etc/issue cat / ...

  2. 附4 springboot源码解析-run()

    public ConfigurableApplicationContext run(String... args) { StopWatch stopWatch = new StopWatch(); / ...

  3. ubuntu/wireshark: There are no interfaces on which a capture can be done.故障解决

    [转载]http://blog.csdn.net/ccwwff/article/details/6697258 在ubuntu安装wireshark, 在启动程序启动wireshark. 点captr ...

  4. Android的硬件抽象层模块编写规范

    硬件抽象层模块编写规范 ​ Android系统的硬件抽象层以模块的形式来管理各个硬件訪问接口.每个硬件模块都相应有一个动态链接库文件.这些动态链接库文件的命令须要符合一定的规范.同一时候,在系统内部. ...

  5. .NET-MVC添加属性验证

    属性验证 //验证字段必输入 [Required(ErrorMessage="用户名必须填写")] //字段长度限制 [MinLength(,ErrorMessage=" ...

  6. python 插入数据获取id

    python 插入数据获取id 学习了:https://blog.csdn.net/qq_37788558/article/details/78151972 commit之前获取 cursor.las ...

  7. JS计算本周一和本周五的日期

    代码不长: var today=new Date();var weekday=today.getDay();    var monday=new Date(1000*60*60*24*(1-weekd ...

  8. 支持各种控件上/下拉刷新的android-pulltorefresh

    android- pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新,如ListView.ViewPager.WevView. ExpandableListView.Grid ...

  9. Visual Studio使用中的问题

    1.后台断点调试,一到断点的时候就VS已停止 原因:安装插件问题,我的由于安装了" .NET Reflector Visual Studio Extension "插件 解决办法: ...

  10. Java从零开始学二十三(集合Map接口)

    一.Map接口 Collection.Set.List接口都属于单值的操作,即:每次只能操作一个对象,而Map与它们不同的是,每次操作的是一对对象,即二元偶对象,Map中的每个元素都使用key à v ...