1):copy不能在有子目录存在的文件中拷贝文件的同时重命名此文件名(注:这里C:为根目录,bat为子目录),
而xcopy能,不过会出现提示,当然你可以加参数而不使它提示。

C:\>copy c:\bat\hai.bat d:\bat\hello.bat

提示:系统找不到指定的路径。

已复制 0 个文件。

但你可以用

C:\>copy c:\hai.bat d:\hell.bat

已复制 1 个文件

C:\>xcopy c:\bat\hai.bat d:\bat\hello.bat

目标 D:\bat\hello.bat 是文件名还是目录名

(F = 文件,D = 目录)? f

C:\bat\hai.bat

复制了 1 个文件

2):copy命令能合并两个文件,而xcopy不能

将文件1.txt和2.txt合并为3.txt

copy /b c:\1.txt+2.txt c:\3.txt

命令格式:copy /b 文件1+文件2+......文件N 合并后的文件名
命令讲解:使用“+”将多个相同或不同格式的文件合并为一个文件。

小提示:

1.在尾部隐藏了文本数据的图片文件,在使用了其他文件编辑器并保存后,隐藏的文本数据有可能丢失。
2.MP3文件在使用此方法连接后,就可以实现连续播放。
3.合成图片/歌曲这样的二进制文件必须使用/b参数(b代表Binaty,二进制),否则将会失败;另一个合并参数是/a(ASCII,文本文件),只能用于纯文本的合并。两参数不能同时使用,二进制方式可以合并文本文件和二进制文件,而文本方式用于纯文本的合并。

3):C:\>copy c:\bat\hai d:\hello

命令解释:将C盘bat目录下所有文件复制到D盘hello目录下。你如果要选择指定定类型的文件(如txt文件)到D:\hello下的,则可以用C:\>copy c:\bat\hai\*.txt d:\hello
注:不会复制子目录下的文件及文件夹。D盘hello目录必须存在

C:\>xcopy c:\bat\hai d:\hello /e/h

命令解释:将C盘bat文件夹拷进D盘hello文件夹,包括所有子目录及具有隐藏和系统文件属性的文件。无论hello文件夹是否已经存在,如果不存在的话系统会提示你创建。

注:/e表示复制所有子目录,包括空目录。/h复制具有隐藏和系统文件属性的文件。

copy命令用法:

E:\Work\Project_Experience\bat_script>copy /?

将一份或多份文件复制到另一个位置。

COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B]

[+ source [/A | /B] [+ ...]] [destination [/A | /B]]

source 指定要复制的文件。

/A 表示一个 ASCII 文本文件。

/B 表示一个二进位文件。

/D 允许解密要创建的目标文件destination 为新文件指定目录和/或文件名。

/V 验证新文件写入是否正确。

/N 复制带有非 8dot3 名称的文件时,尽可能使用短文件名。

/Y 不使用确认是否要覆盖现有目标文件的提示。

/-Y 使用确认是否要覆盖现有目标文件的提示。

/Z 用可重新启动模式复制已联网的文件。

/L 如果源是符号链接,请将链接复制到目标而不是源链接指向的实际文件。

命令行开关 /Y 可以在 COPYCMD 环境变量中预先设定。这可能会被命令行上的 /-Y 替代。
除非 COPY命令是在一个批处理脚本中执行的,默认值应为在覆盖时进行提示。

要附加文件,请为目标指定一个文件,为源指定数个文件(用通配符或 file1+file2+file3 格式)。
xcopy命令用法:
E:\Work\Project_Experience\bat_script>xcopy /?

复制文件和目录树。

XCOPY source [destination] [/A | /M] [/D[:date]] [/P] [/S [/E]] [/V] [/W]

[/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/

[/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z] [/B]

[/EXCLUDE:file1[+file2][+file3]...]

source 指定要复制的文件。

destination 指定新文件的位置和/或名称。

/A 仅复制有存档属性集的文件,但不更改属性。

/M 仅复制有存档属性集的文件,并关闭存档属性。

/D:m-d-y 复制在指定日期或指定日期以后更改的文件。

如果没有提供日期,只复制那些源时间比目标时间新的文件。

/EXCLUDE:file1[+file2][+file3]...

指定含有字符串的文件列表。每个字符串在文件中应位于单独的一行

如果任何字符串与复制文件的绝对路径的任何部分相符,则排除复制

该文件。例如,指定如 \obj\ 或 .obj 的字符串会分别排除目录

obj 下面的所有文件或带有 .obj 扩展名的所有文件。

/P 创建每个目标文件之前提示您。

/S 复制目录和子目录,不包括空目录。

/E 复制目录和子目录,包括空目录。与 /S /E 相同。可以用来修改 /

/V 验证每个新文件的大小。

/W 提示您在复制前按键。

/C 即使有错误,也继续复制。

/I 如果目标不存在,且要复制多个文件,则假定目标必须是目录。

/Q 复制时不显示文件名。

/F 复制时显示完整的源文件名和目标文件名。

/L 显示要复制的文件。

/G 允许将加密文件复制到不支持加密的目标。

/H 也复制隐藏文件和系统文件。

/R 覆盖只读文件。

/T 创建目录结构,但不复制文件。不包括空目录或子目录。/T /E 包括

空目录和子目录。

/U 只复制已经存在于目标中的文件。

/K 复制属性。一般的 Xcopy 会重设只读属性。

/N 用生成的短名称复制。

/O 复制文件所有权和 ACL 信息。

/X 复制文件审核设置(隐含 /O)。

/Y 取消提示以确认要覆盖现有目标文件。

/-Y 要提示以确认要覆盖现有目标文件。

/Z 在可重新启动模式下复制网络文件。

/B 复制符号链接本身与链接目标相对。

/J 复制时不使用缓冲的 I/O。推荐复制大文件时使用。

开关 /Y 可以预先在 COPYCMD 环境变量中设置。

这可能被命令行上的 /-Y 覆盖。

 

Copy & XCopy的更多相关文章

  1. Window: move\copy\xcopy

    Move 移动文件和重命名文件与目录. 要移动一个或多个文件: MOVE [/Y | /-Y] [drive:][path]filename1[,...] destination 要重命名目录: MO ...

  2. 机器学习实战笔记(Python实现)-08-线性回归

    --------------------------------------------------------------------------------------- 本系列文章为<机器 ...

  3. WinXP/Win7/Win8本地用户配置文件迁移至域用户

    一.概述 最近在进行加域的工作,PC大部分是Win7,使用过微软USMT 4.0和5.0工具进行迁移,但命令行报错,目前还没找到好的文章研究. 本文迁移方法很特殊,利用的是Windows默认配置文件. ...

  4. 深入浅出Windows BATCH

    1.什么是Windows BATCH BATCH也就是批处理文件,有时简称为BAT,是Windows平台上的一种可运行脚本,与*nix(Linux和Unix)上的Shell脚本和其它的脚本(Perl, ...

  5. 命令控制台与java环境配置

    1. 命令控制台 1) Linux / Unix 命令格式  command [-选项...] [参数...]  如:  ls -a ~      mkdir .demo  //创建隐藏目录      ...

  6. (线性回归)Liner Regression简单应用

    警告:本文为小白入门学习笔记 数据连接: http://openclassroom.stanford.edu/MainFolder/DocumentPage.php?course=DeepLearni ...

  7. Dos常用命令大全

    dos命令进入文件夹 输入 D: 回车,进入D盘的根目录,然后输入dir 回车 可以查看根目录下的文件和文件夹,  输入 cd空格文件夹的名字(不区分大小写) 进入文件夹根目录下, 依次输入dir 查 ...

  8. 《机器学习实战》笔记——regression

    本章介绍了不同场景下使用的线性回归方法 一般情况:简单的线性回归 欠拟合:局部加权线性回归 特征数大于样本数:岭回归 或 lasso法 最后引出交叉验证,用来定量地找到最佳参数值 # _*_ codi ...

  9. 发挥bat的作用

    from 转自:http://blog.csdn.net/hitlion2008/article/details/7467252 1.什么是Windows BATCH BATCH也就是批处理文件,有时 ...

随机推荐

  1. es2015 解构赋值

    解构赋值语法是一个 Javascript 表达式,这使得可以将值从数组或属性从对象提取到不同的变量中.

  2. CENTOS 7 安装 TINYPROXY 代理服务器

    https://www.cnblogs.com/new_2050/p/7658508.html

  3. java学习 之 操作符

    操作符介绍 java语言操作符 1.赋值操作符  = 2.计算操作符   + .- (减.负号).*(乘)./(除) 3.递增递减     --(递减).++(递增) 4.关系操作符    ==.!= ...

  4. python内置模块之-logging

    logging 模块主要用于写日志 logging模块主要有如下几个组件 Logger  Logger对象提供应用程序可直接使用的接口 Handler Handler发送日志到适当的目的地 Filte ...

  5. 会跳高的字体插件jquery.beattext.js

    插件描述:字体特效,会弹跳的字体插件jquery.beattext.js,兼容性如下: 使用方法 导入如下3个js文件: <script type="text/javascript&q ...

  6. Conversation function

    通过conversation function可以把类转成任意类型的值 #include <iostream> using namespace std; class Age { priva ...

  7. net core体系-web应用程序-4asp.net core2.0 项目实战(任务管理系统)-1项目说明

    https://www.bug2048.com/netcore20180313/ 最近公司的一个小项目尝试使用 .net core作为服务端进行开发,并顺利上线运行了一段时间,整体效果还是比较满意的. ...

  8. BZOJ3160 万径人踪灭 字符串 多项式 Manachar FFT

    原文链接http://www.cnblogs.com/zhouzhendong/p/8810140.html 题目传送门 - BZOJ3160 题意 给你一个只含$a,b$的字符串,让你选择一个子序列 ...

  9. servlet(一):Servlet的概念和运行流程

    概念: 狭义的 Servlet 是指 Java 语言实现的一个接口,广义的 Servlet 是指 任何实现了这个 Servlet 接口的类,一般情况下,人们将 Servlet 理解为后者. Servl ...

  10. commanderJs编写命令行工具(cli)

    前言: 最近需要做一个内部的node cli来独立构建流程,对整个命令行工具实现流程有了大致了解,下面来解释一下如何实现一个cli,和如何使用 commander 库.   新手误区: 在开始实现之前 ...