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资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序的更多相关文章

  1. instsrv.exe下载和使用方法(微软Windows Server 2003 Resource Kit Tools工具中的一个)

    instsrv.exe是微软Windows Server 2003 Resource Kit Tools工具中的一个. Windows Server 2003 Resource Kit Tools是一 ...

  2. 关于微软RDLC报表打印时文字拉伸问题(Windows server 2003 sp2)

    最近我们开发的打印服务频频出现打印文字拉伸问题,客户意见络绎不绝,最为明显的是使用黑体加粗后 “2.0份” 打印出来后小数点几乎看不见了,用户很容易误认为 “ 20份” .所以问题达到了不得不停下手上 ...

  3. 低调的华丽,Windows Server 2003 ... 写给厌倦了XP,但又纠结于vista/win7花哨的童鞋(转)

    发布于2001年10月25日的windows XP 距今已近8年 时间, 微软从没有一个操作系统能像XP那样  坚挺这么久,婚姻既有7年之痒,何况用了8年XP的广大 同学,但07年发布的vista似乎 ...

  4. Windows Server 2003 SP2 R2 企业版/标准版/32与64位 CD-KEY

    微软发布Windows Server 2003 R2版的目的是希望透过它填补Windows Server 2003 SP1和Longhorn Server之间的产品发布时间间隔.所以Windows S ...

  5. atitit.Windows Server 2003 2008 2012系统的新特性 attilax 总结

    atitit.Windows Server 2003  2008  2012系统的新特性 attilax 总结 1. Windows Server 2008 新特性也可以归纳为4个方面. 1 2. 相 ...

  6. 规则“Windows Server 2003 FILESTREAM 修补程序检查” 失败。

    近期在客户环境搭建SQL故障转移群集,操作系统为SQL Server 2012R2,数据库版本为SQL Server2008 R2,在安装过程中遇到问题:没有安装Windows Server 2003 ...

  7. 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 ...

  8. Windows Server 2003搭建邮件服务器

    Windows Server 2003搭建邮件服务器 由于Windows Server 2003默认是没有安装我们搭建邮件服务器所需要的POP3和SMTP服务的,因此需要我们自己来安装.方法如下: 1 ...

  9. 远程桌面连接不上|windows server 2003 sp2 termdd.sys(转载)

    远程桌面连接不上|windows server 2003 sp2 termdd.sys.请教一个问题,为什么 Windows Server 2003 打上SP2补丁,就不能通过远程桌面连接上去了?服务 ...

随机推荐

  1. WPF从入门到放弃系列第一章 初识WPF

    什么是WPF WPF(Windows Presentation Foundation)是微软推出的基于Windows Vista的用户界面框架,属于.NET Framework 3.0的一部分.它提供 ...

  2. 【toplink】 位居第一的Java对象关系可持续性体系结构

    TopLink,是位居第一的Java对象关系可持续性体系结构,原署WebGain公司的产品,后被Oracle收购,并重新包装为Oracle AS TopLink.TOPLink为在关系数据库表中存储 ...

  3. javaWeb中的/路径问题

    在写javaweb的时候,在写路径的时候,/有时候表示站点根目录,有时候表示当前web应用根目录,究竟如何区分呢? 首先,我们建议开发的时候,跳转之类的都是用绝对路径(注意:不是物理路径),而不是使用 ...

  4. MVC-简单验证码制作

    1.制作验证码: using System; using System.Collections.Generic; using System.Drawing; using System.Drawing. ...

  5. Pair Project: Elevator Scheduler [电梯调度算法的实现和测试][关于电梯调度算法的附加思考]:刘耀先-11061183,罗凡-11061174

    本文为对于电梯调度算法的三个附加题思考 1.改进电梯调度的interface 设计, 让它更好地反映现实, 更能让学生练习算法, 更好地实现信息隐藏和信息共享. <1>进一步提高API定义 ...

  6. 关于xcode6打包以及上线前企业部署测试的说明 --转自张诚教授微博

    xcode6如何打包 首先clean然后点击归档 点击打包之后保存 点选第一个以后检查相关证书签名 那么我们开发完以后,在上线前如何给别人测试 有2种方法 1.使用299美金的企业开发者账号搭建企业部 ...

  7. java线程池的使用与详解

    java线程池的使用与详解 [转载]本文转载自两篇博文:  1.Java并发编程:线程池的使用:http://www.cnblogs.com/dolphin0520/p/3932921.html   ...

  8. [转载]初学C#之list

    C# List<T>用法 所属命名空间:System.Collections.Generic public class List<T> : IList<T>, IC ...

  9. Unity3D研究院之在MAC上脚本XlsxWriter写入Excel .xlsx格式

    原地址:http://www.xuanyusong.com/archives/3011 以前找了很久可以跨平台支持读写Excel的工具,我也试了很多种DLL.可在Windows上各个完美支持,可是在M ...

  10. 再硬写一个最简单的HTTPSERVER

    参考同上一个贴: 纯于练手. #HTTPserver import socket HOST = '' PORT = 8088 text_content = '''HTTP/1.x 200 OK Con ...