情景一：两个bat文件在同一个目录下有时候我们需要在一个bat文件中调用另一个bat文件，比如我们想在a.bat中调用b.bat，如下。a.bat@echo offecho I am a.bat…echo now run the b.batcall b.batecho overb.bat@echo offecho I am b.bat…在cmd窗口中执行a.bat，结果如下：I am a.bat…now run the b.batI am b.bat…over通过call命令，我们可以调用另一个bat文件，执行完会再返回到原本的bat文件中继续执行。但是这里有个问题，就是两个bat文件必须在同一个目录下，否则会找不到要call的bat文件。情景二：两个bat文件不在同一个目录下假如要call的bat文件在其他目录，我们可以在call之前，先使用cd /d 目录来进入相应的目录，接着再call就行了，如下：a.bat@echo offecho I am a.bat…echo now run the b.batcd /d D:\testcall b.batecho overb.bat@echo offecho I am b.bat…执行后得到结果如下：I am a.bat…now run the b.batI am b.bat…over不过，这里需要注意的是，此时执行完命令的cmd窗口的当前目录是b.bat所在的目录了，而不是a.bat的目录。情景三：开启一个新的cmd窗口来运行另一个bat文件假如我们希望另外启动一个新的cmd窗口来运行b.bat，可以通过start cmd命令来实现，如下：a.bat@echo offecho I am a.bat…echo now run the b.batcd /d D:\teststart “” cmd /k call b.batecho overb.bat@echo offecho I am b.bat…执行后得到结果如下：原本的cmd窗口中：I am a.bat…now run the b.batover新的cmd窗口中：I am b.bat…这里简单解释下该命令的参数：start “” cmd /k call b.bat“”是一段字符串，代表新打开的cmd窗口的名字，可以随便起名。/k是表示新打开的cmd窗口在执行完命令后保存打开状态，如果希望执行完就关闭窗口就使用/ccall b.bat表示call命令，即调用b.bat文件；该命令可以用”“括起来，即：”call b.bat”
命令行复制COPYcopy C:\old.txt D:\new.txt这是最基本的复制功能命令。它允许你将一个路径下的文件快速复制到另一个路径中。你也可以使用这个命令合并文件。其中xxx.xxx可以使用通配符*.*匹配所有文件C:\Users\desktop\*.* D:\backupXCOPYxcopy命令允许你复制文件和目录树。这个命令更适用于复制文件夹。xcopy命令也有很多编辑修改的衍生命令，能够让高级用户更多地控制复制进程。为了支持robocopy命令，xcopy现已被弃用，但是它依旧有效，可以复制文件。ROBOCOPYrobocopy C:\tools D:\backup\tools /e在Windows命令提示符中，它是最新的可用的复制命令。它需要Windows Vista或更新的系统作为支撑。Windows XP用户需要安装Windows 2003 服务器资源套件工具包才能使用它。robocopy支持更多重要的文件复制任务，可以创建两个文件结构的完全的镜像副本而不复制任何不需要的文件，与此同时还能保留文件权限和其他属性等。同时它还允许您保留所有相关文件信息，更适用于复制大量数据。复制特定文件指定文件类型Robocopy d:\写作 e:\写作 *.txt *.doc *.xls *.ppt *.rar /s指定时间Robocopy d:\写作 e:\写作 /s *.txt *.doc *.xls *.ppt /maxage:30/maxage:指定日期以后的可接数字，也可以接日期数字小于1900时表示天数，或者YYYYMMDD/minage:指定日期之前的​命令说明复制选项类型定义/S复制子目录，但不复制空的子目录/E复制子目录，包括空的子目录/LEV:n仅复制源目录树的前 n 层/Z在可重新启动模式下复制文件/B在备份模式下复制文件/ZB使用可重新启动模式；如果拒绝访问，请使用备份模式/EFSRAW在 EFS RAW 模式下复制所有加密的文件/COPY:复制标记要复制的文件内容(默认为/COPY:DAT）（复制标记: D=数据，A=属性，T=时间戳）S=安全=NTFS ACL，O=所有者信息，U=审核信息）/DCOPY:T复制目录时间戳/SEC复制具有安全性的文件(等同于/COPY:DATS）/COPYALL复制所有文件信息(等同于/COPY:DATSOU）/NOCOPY不复制任何文件信息(与/PURGE 一起使用生效）/SECFIX修复所有文件的文件安全性，即使是跳过的文件/TIMFIX修复所有文件的文件时间，即使是跳过的文件/PURGE删除源中不再存在的目标文件/目录/MIR镜像目录树(等同于/E 和/PURGE）/MOV移动文件(复制后从源中删除）/MOVE移动文件和目录(复制后从源中删除）/A+:[RASHCNET]将给定的属性添加到复制文件/A-:[RASHCNET]从复制文件中删除给定的属性/CREATE仅创建目录树和长度为零的文件/FAT仅使用 8.3 FAT 文件名创建目标文件/256关闭超长路径(> 256 字符）支持/MON:n监视源；发现多于 n 个更改时再次运行/MOT:m监视源；如果更改，在 m 分钟时间内再次运行/RH:hhmm-hhmm运行小时数 - 可以启动新副本的时间/PF以每个文件(而不是每个步骤）为基础检查运行小时数/IPG:n程序包间的间距(ms），以释放低速线路上的带宽文件选择选项:类型定义/A仅复制具有存档属性集的文件/M仅复制具有存档属性的文件并重置存档属性/IA:[RASHCNETO]仅包含具有任意给定属性集的文件/XA:[RASHCNETO]排除具有任意给定属性集的文件/XF 文件[文件]...排除与给定名称/路径/通配符匹配的文件/XD 目录[目录]...排除与给定名称/路径匹配的目录/XC排除已更改的文件/X排除较新的文件/XO排除较旧的文件/XX排除多余的文件和目录/XL排除孤立的文件和目录/IS包含相同文件/IT包含已调整的文件/MAX:n最大的文件大小 - 排除大于 n 字节的文件/MIN:n最小的文件大小 - 排除小于 n 字节的文件/MAXAGE:n最长的文件存在时间 - 排除早于 n 天/日期的文件/MINAGE:n最短的文件存在时间 - 排除晚于 n 天/日期的文件/MAXLAD:n最大的最后访问日期 - 排除自 n 以来未使用的文件/MINLAD:n最小的最后访问日期 - 排除自 n 以来使用的文件 (If n < 1900 then n = n days, else n = YYYYMMDD date)/XJ排除接合点。(默认情况下通常包括)/FFT假设 FAT 文件时间(2 秒粒度)/DST弥补 1 小时的 DST 时间差/XJD排除目录的接合点/XJF排除文件的接合点## 重试选项: 类型定义/R:n失败副本的重试次数: 默认为 1 百万/W:n两次重试间的等待时间: 默认为 30 秒/REG将注册表中的 /R:n 和 /W:n 保存为默认设置/TBD等待定义共享名称(重试错误 67)## 日志记录选项: 类型定义/L仅列出 - 不复制、添加时间戳或删除任何文件/X报告所有多余的文件，而不只是选中的文件/V生成详细输出，同时显示跳过的文件/TS在输出中包含源文件的时间戳/FP在输出中包含文件的完整路径名称/BYTES以字节打印大小/NS无大小 - 不记录文件大小/NC无类别 - 不记录文件类别/NFL无文件列表 - 不记录文件名/NDL无目录列表 - 不记录目录名称/NP无进度 - 不显示已复制的百分比/ETA显示复制文件的预期到达时间/LOG:文件将状态输出到日志文件(覆盖现有日志)/LOG+:文件将状态输出到日志文件(附加到现有日志中)/UNILOG:文件以 UNICODE 方式将状态输出到日志文件(覆盖现有日志)/UNILOG+:文件以 UNICODE 方式将状态输出到日志文件(附加到现有日志中)/TEE输出到控制台窗口和日志文件/NJH没有作业标头/NJS没有作业摘要/UNICODE以 UNICODE 方式输出状态## 作业选项 : 类型定义/JOB:作业名称从命名的作业文件中提取参数/SAVE:作业名称将参数保存到命名的作业文件/QUIT处理命令行后退出(以查看参数)/NOSD未指定源目录/NODD未指定目标目录/IF包含以下文件