Robocopy是微软Windows Server 2003资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序
Robocopy是微软Windows Server 2003资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序)。没错,Robocopy的功能是拷贝文件,你也许会觉得无聊并且要翻阅下一篇文章了,且慢,让我们给这个有趣的小程序一个机会吧。Robocopy能够处理包括巨大的数据字节块在内的复制操作,并且它可以让你确定拥有像Copy和Xcopy等其它拷贝程序那样的技术规范。解释一下,例如你可以用Robocopy去拷贝某一个完整的目录树,而不仅仅是树下的三层。并且,你还可以指定Robocopy在进行网络拷贝的操作期间不会超过使用网络带宽的三分之一资源等等。 如果说Robocopy有什么缺点的话,那就是它的语法。资源工具包中的robocopy.doc文档除了用如此冗长的32个页码解释它的语法外并没有一些真正实用的内容。那么就让我们分析透彻它,并且挑选出一些关于Robocopy的基本语法。
Robocopy 基础
从Robocopy的简单表达形式可以看出,它同其它命令行拷贝工具有着细微的类同之处: robocopy <source directory> <destination directory><filenames> <options> 如果我想将C:\stuff目录的所有文件都拷贝到C:\stuffbak目录下,那么我应该键入: robocopy C:\stuff C:\stuffbak 到目前为止,还不错。看起来就像是一个Copy或者Xcopy程序的操作。但是如果我仅仅想拷贝文件名的开头包含“s”的文本文件又该怎样操作呢?在Xcopy中我应该像下面所示的那样键入: xcopy C:\stuff\s*.txt C:\stuffbak 然而,在Robocopy中那样的语法是行不通的。取而代之的是,将源目录和目的目录结合起来并增加文件类型和过滤器。对文件类型和过滤器,Robocopy用一个分开的位置来实现。那么对于上述的文本文件拷贝而言,你就应该键入: robocopy C:\stuff C:\stuffbak s*.txt
网络应用
到目前为止,我已经列举了源和目的目录的拷贝实例,但他们仅仅是基于本地文件目录的操作,Robocopy也能处理通用命名约定(UNC)名称的操作。例如: robocopy \\marksws\myfiles \\centralserver\marksfiles
这个命令将会把marksws计算机中共享目录myfiles的所有文件,通过网络拷贝到centralserver计算机中共享的marksfiles目录里面。这样的功能也许是很有用的,但是当我们加入了网络的混合应用条件后,我们就需要考虑网络可靠性方面的问题了。 任何网络拷贝的操作都会被许多潜在的网络问题中断。在许多实际应用中,网络问题会在不久由它自身清除。因此,你仅仅是需要短暂的等待后再次重复刚才的操作即可。但是,又有谁想像个婴儿似的等候在电脑边重复着一个很大网络文件的传输呢?幸运的是,当失败事件发生时,你可以通过指定一个时间数字(单位:秒)后,使得Robocopy自动再次运行拷贝操作(用/w:xx 选项),并且你也能通过一个指定的数字来设定Robocopy拷贝工作重试的次数(用/r:yy选项)。好了,我们来设定Robocopy进行网络文件拷贝的重试次数为13次,并且每次重试期间间隔30秒。你应该键入: robocopy \\marksws\myfiles \\centralserver\marksfiles /w:30 /r:13 如果你不想指定等待间隔或者重试次数,理论上Robocopy会使用默认的100万重试次数和30秒的重试间隔时间。一条简单的Robocopy命令就可以在一个非常糟糕的网络环境中甚至用一年的时间来完成拷贝操作(当然这可不是我实际想去尝试的)。 有时候,网络拷贝的工作会因为一个简单但令人烦恼的原因失败。举个例子,你可能没有正在拷贝的所有的文件的读取权限。(当你尝试去备份一个用户的profile文件或者主目录时就会遇到这种情况。)如果你需要备份一些文件而又没有NTFS的读取权限,那么就要检查你是否具有文件的备份权限——记住,读取权限和备份权限可不是一回事。如果有的话,你就可以使用Robocopy的/b或者/zb选项来备份文件。/b选项是令Robocopy使用备份权限备份,而/zb选项是令它首先尝试标准拷贝操作,失败后再用备份权限进行拷贝。
仅仅是开始
本篇文件的目的是点到为止地介绍Robocopy。你也可以看一看联机文档
Robocopy是微软Windows Server 2003资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序的更多相关文章
- instsrv.exe下载和使用方法(微软Windows Server 2003 Resource Kit Tools工具中的一个)
instsrv.exe是微软Windows Server 2003 Resource Kit Tools工具中的一个. Windows Server 2003 Resource Kit Tools是一 ...
- 关于微软RDLC报表打印时文字拉伸问题(Windows server 2003 sp2)
最近我们开发的打印服务频频出现打印文字拉伸问题,客户意见络绎不绝,最为明显的是使用黑体加粗后 “2.0份” 打印出来后小数点几乎看不见了,用户很容易误认为 “ 20份” .所以问题达到了不得不停下手上 ...
- 低调的华丽,Windows Server 2003 ... 写给厌倦了XP,但又纠结于vista/win7花哨的童鞋(转)
发布于2001年10月25日的windows XP 距今已近8年 时间, 微软从没有一个操作系统能像XP那样 坚挺这么久,婚姻既有7年之痒,何况用了8年XP的广大 同学,但07年发布的vista似乎 ...
- Windows Server 2003 SP2 R2 企业版/标准版/32与64位 CD-KEY
微软发布Windows Server 2003 R2版的目的是希望透过它填补Windows Server 2003 SP1和Longhorn Server之间的产品发布时间间隔.所以Windows S ...
- atitit.Windows Server 2003 2008 2012系统的新特性 attilax 总结
atitit.Windows Server 2003 2008 2012系统的新特性 attilax 总结 1. Windows Server 2008 新特性也可以归纳为4个方面. 1 2. 相 ...
- 规则“Windows Server 2003 FILESTREAM 修补程序检查” 失败。
近期在客户环境搭建SQL故障转移群集,操作系统为SQL Server 2012R2,数据库版本为SQL Server2008 R2,在安装过程中遇到问题:没有安装Windows Server 2003 ...
- Windows Server 2003 IIS6.0+PHP5(FastCGI)+MySQL5环境搭建教程
准备篇 一.环境说明: 操作系统:Windows Server 2003 SP2 32位 PHP版本:php 5.3.14(我用的php 5.3.10安装版) MySQL版本:MySQL5.5.25 ...
- Windows Server 2003搭建邮件服务器
Windows Server 2003搭建邮件服务器 由于Windows Server 2003默认是没有安装我们搭建邮件服务器所需要的POP3和SMTP服务的,因此需要我们自己来安装.方法如下: 1 ...
- 远程桌面连接不上|windows server 2003 sp2 termdd.sys(转载)
远程桌面连接不上|windows server 2003 sp2 termdd.sys.请教一个问题,为什么 Windows Server 2003 打上SP2补丁,就不能通过远程桌面连接上去了?服务 ...
随机推荐
- 【WEB-INF】WEB-INF是Java的WEB应用的安全目录
WEB-INF下的东西是禁止直接访问的.如果这个页面是你的,要想让人访问最好不要放在这个目录下.如果一定放在那里.你可以使用:request.getRequestDispatcher("/W ...
- VC项目配置基础以及快捷键(收藏)
来自http://blog.csdn.net/phunxm/article/details/5082488 一.IDE基础配置 1.字体 VC6中“Tools→Options→Format→Font” ...
- BZOJ 3996 [TJOI 2015] 线性代数 解题报告
首先,我们可以得到: $$D = \sum_{i=1}^{n}\sum_{j=1}^{n}a_i\times a_j\times b_{i,j} - \sum_{i=1}^{n}a_i\times c ...
- Cygwin环境编译/usr/include/sys/_types.h:72:20: 致命错误:stddef.h:can not found
环境介绍: win7_x64 +Cygwin64 gcc :4.8.2 g++:4.8.1 编译 c++的helloworld.cpp 一直失败! 代码如下: #include <iostrea ...
- Mysql Not in有null值查询的问题
今天发现Mysql的not in使用的一个问题,大致是: select * from A where id not in (select fid from B). 发现查询结果无论如何都是0条记录.后 ...
- 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80070005 拒绝访问
检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80070005 拒绝访问 已重装office2 ...
- [jobdu]二进制中1的个数
做法是n&(n-1).据说还有变态的查表法:http://www.cnblogs.com/graphics/archive/2010/06/21/1752421.html.最后,居然必须用sc ...
- 关于 ASP.NET MVC 4 如果管理用户
很久没上来写博客,因为自己没写博客的日子里去学了一下OBJECTIVE-C 和 ASP.NET MVC.最近在学ASP.NET MVC 4,有个问题一直在困扰着我,就是怎样管理用SIMPLE MEMB ...
- Notification 多次传递参数 一直都是旧的 解决
参考 :http://blog.163.com/caoguoqiang_dlut/blog/static/10658914220114167219320/ 问题描述: 在service中获取到数据,通 ...
- Android开发之permission
permission,Android权限系统. 基本上都是在manifest.xml文件中进行操作. 1.申请使用权限 申请使用权限使用标记:<uses-permission /> 比如申 ...