svn命令行批量删除和批量添加

如果使用svn的命令行,例如在linux下的终端中使用,svn的添加命令是svn add,删除命令是svn del,但是缺乏批量的操作,如果我在资源管理器中,手动添加了好多个文件夹下的各种各样的文件,然后我想一次性add,svn就力不从心了,即使使用svn add *,也会因为新添文件的父目录已经被添加进版本库而忽略父目录下的所有文件。手动删除了很多文件,想要一次性del时,也会遇到类似的情况。

通过研究,发现以下的命令能够解决这两个问题:

批量删除文件——

svn status|grep ! |awk '{print $2}'|xargs svn del

语句释义是:首先svn status查看svn状态,列出所有改动,打!号的是已经删除的文件但是还未标记成从库中除去,grep !将这些文件单独抽离出来,

此时如果不执行后面的语句,呈现的内容应该是类似

!       img/p/2-49-small.jpg
! img/p/2-48-thickbox.jpg
! img/p/2-48-medium.jpg

再用awk '{print $2}'将抽离出来的文本结果处理,留下每一行的第二段文字,即后面的文件名,

此处必须注意,svn status|grep !和后面的语句|awk '{print $2}'|xargs svn del之间,必须有一个空格,否则终端还是会认为这个!号是特殊符号

此时呈现的结果应该是

img/p/2-49-small.jpg
img/p/2-48-thickbox.jpg
img/p/2-48-medium.jpg

这个时候就可以直接递交给svn del命令了,使用xargs这个参数构造命令,将每一行的文本作为参数提供给svn del,结果就是所有列出的文件都执行了一遍del了。

批量添加文件——

几乎一样,不同的是svn标记的符号不一样,使用的是问号!

svn status|grep ? |awk '{print $2}'|xargs svn add

svn命令行批量删除和批量添加的更多相关文章

  1. Sql批量添加,批量查询,批量删除,批量修改。mybatis都有对应标签

    Sql批量添加,批量查询,批量删除,批量修改.mybatis都有对应标签

  2. Mac SVN 命令行

    Mac自带了SVN命令行,如我的升级到10.10(OSX yosemite)后命令行版本为1.7.10 以下是一些常用命令 1.将文件checkout到本地目录 svn checkout path(p ...

  3. 如何用SQL命令行工具删除dedecms指定id文章

    用dedecms采集时标题字段设置错了,出现了注释符号<!---->,导致后台的文章列表出现错误,也无法直接从列表中删除,可以远程登录数据库去操作,这个相对比较麻烦,想着直接从后台的SQL ...

  4. [MAC] Mac下的SVN命令行

    转载自: http://www.cnblogs.com/snandy/p/4072857.html Mac自带了SVN命令行,如我的升级到10.10(OSX yosemite)后命令行版本为1.7.1 ...

  5. Linux环境SVN命令行使用经验总结(转)

    在windows机器上开发得差不多了之后,打包传送到开发机编译,在开发机上解决编译错误. [缺点] 浪费时间在打包解包,机器间传输代码. 在windows机器上开发之后,check in代码进分支,在 ...

  6. 转:svn命令行操作

    原文:http://zhumeng8337797.blog.163.com/blog/static/10076891420115218821912/SVN命令行 -- ::| 分类: CVS |字号 ...

  7. Windows下SVN命令行工具使用详解

    根据我的记忆,似乎Windows 7下自自带一个svn命令行工具.如果你的机器没有,不必担心.你可以从http://subversion.tigris.org获 取subversion for win ...

  8. SVN命令行笔记

    SVN命令行笔记 近期玩了一下命令行,记录如下. svn info <path> #查看文件,路径信息 svn log <path> #查看文件,路径历史记录 svn st(s ...

  9. pycharm不支持svn,是需要svn命令行工具没有安装(for windows)

    1. 安装svn命令行工具 Subversion for Windows下载https://sourceforge.net/projects/win32svn/?source=typ_redirect ...

随机推荐

  1. Codeforces Round #400 (Div. 1 + Div. 2, combined)——ABCDE

    题目戳这里 A.A Serial Killer 题目描述似乎很恶心,结合样例和样例解释猜测的题意 使用C++11的auto可以来一手骚操作 #include <bits/stdc++.h> ...

  2. JPA学习(基于hibernate)

    参考博客:https://blog.csdn.net/baidu_37107022/article/details/76572195 常用注解: https://blog.csdn.net/eastl ...

  3. Anton and Permutation

    Anton and Permutation time limit per test 4 seconds memory limit per test 512 megabytes input standa ...

  4. [Usaco2014 Mar]Sabotage

    [Usaco2014 Mar]Sabotage 题目 Farmer John"s arch-nemesis, Farmer Paul, has decided to sabotage Far ...

  5. fzu 2129

    第i个元素a未出现过:dp[i] = (2 * dp[i-1] + 1) % mod; visit[a]代表a最后出现的位置 第i个元素a出现过:dp[i] = (2 * dp[i-1] - dp[v ...

  6. node.js 如何完美的从命令行接收参数所传递进来的值

    https://segmentfault.com/q/1010000000367285

  7. Spring MVC-集成(Integration)-集成LOG4J示例(转载实践)

    以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_log4j.htm 说明:示例基于Spring MVC 4.1.6. 以下示例说明 ...

  8. Linux vim 入门 配置 及 使用初步

    网上能够找到的,关于VI的教程,更是多为能吓死人的上百页说明.事实上, 从我个人的实践看,全然不须要如此夸张.要完毕最主要的编辑.仅仅要熟悉几个命令,就是把VIM用得非常好. 这里就列举一下: Esc ...

  9. HDU 4508

    祼的完全背包问题 #include <iostream> #include <cstdio> #include <cstring> #include <alg ...

  10. HDU 2563 统计问题(递推)

    题目链接:http://acm.hdu.edu.cn/showproblem.php? pid=2563 将向上移的步数设为a[n],将向左右移的步数设为b[n],有a[n]=a[n-1]+b[n-1 ...