svn命令行批量删除和批量添加
来源:互联网 发布:不干胶雕刻机软件 编辑:程序博客网 时间:2024/05/16 19:33
svn命令行批量删除和批量添加
如果使用svn的命令行,例如在linux下的终端中使用, www.2cto.com
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
www.2cto.com
再用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 命令行 批量删除和批量添加
- svn 命令行 批量删除和批量添加
- svn命令行批量删除和批量添加
- svn 命令行批量删除和批量添加
- svn 命令行 批量删除和批量添加
- svn 批量添加和删除
- svn实现批量添加和删除文件
- SVN批量添加与删除
- Mybatis中的批量添加和批量删除
- 批量添加和批量删除(statement.addBatch() )
- Hibernate批量更新和批量删除批量添加 1(转)
- ibates批量删除和添加
- 批量删除.svn文件夹和.svn文件
- 批量删除 .svn 文件夹和 .svn 文件
- Mybatis批量查询,批量添加,批量删除
- ubuntu 批量删除 .svn
- 批量删除svn
- 批量删除.svn文件
- 关联表的数据组合
- android之ConnectivityManager简介,网络连接状态
- php float转为int 失真问题解决办法
- osgEarth worldToScreen
- window.location.Reload()和window.location.href 区别
- svn命令行批量删除和批量添加
- Hadoop中的各种排序
- spring-data-jpa 使用
- 在IOS工程中如何添加SQLite的libsqlite3.dylib
- 标准库 STL :Allocator能做什么?
- Linux网络编程:原始套接字的魔力【上】
- 属性
- asterisk对接DID大号
- 关于js中"window.location.href"、"location.href"、"parent.location.href"、"top.location.href"的用法