bat文件xcopy指令?

XCOPY是COPY的扩展,可以把指定的目录连文件和目录结构一并拷贝,但不能拷贝系统文件;使用时源盘符、源目标路径名、源文件名至少指定一个;选用/S时对源目录下及其子目录下的所有文件进行COPY。除非指定/E参数,否则/S不会拷贝空目录,若不指定/S参数,则XCOPY只拷贝源目录本身的文件,而不涉及其下的子目录;选用/V参数时,对的拷贝的扇区都进行较验,但速度会降低。

我们不可数典忘祖,该学习的还是要学习,不该忘记的还是不能忘记,尤其是DOS批处理命令,在开发软件或项目的时候,都离不开这些基本的原始的命令。本文,我们来学习Xcopy的参数及实例

一、Xcopy参数介绍

  source 指定要复制的文件。
  destination 指定新文件的位置和/或名称。
  /A 只复制有存档属性集的文件, 但不改变属性。
  /M 只复制有存档属性集的文件, 并关闭存档属性。
  /D:m-d-y 复制在指定日期或指定日期以后改变的文件。如果没有提供日期,只复制那些源时间比目标时间新的文件。
  指定含有字符串的文件列表。如果有任何字符串与要被复制的文件的绝对路径相符,那个文件将不会得到复制。
  例如,指定如 \obj\ 或 .obj 的字符串会排除目录 obj 下面的所有文件或带有 .obj 扩展名的文件。
  /P 创建每个目标文件前提示。
  /S 复制目录和子目录,除了空的。
  /E 复制目录和子目录,包括空的。 与 /S /E 相同。可以用来修改 /T。
  /V 验证每个新文件。
  /W 提示您在复制前按键。
  /C 即使有错误,也继续复制。
  /I 如果目标不存在,又在复制一个以上的文件, 则假定目标一定是一个目录。
  /Q 复制时不显示文件名。
  /F 复制时显示完整的源和目标文件名。
  /L 显示要复制的文件。
  /G 允许将没有经过加密的文件复制到不支持加密的目标。
  /H 也复制隐藏和系统文件。
  /R 改写只读文件。
  /T 创建目录结构,但不复制文件。不包括空目录或子目录。/T /E 包括空目录和子目录。
  /U 只复制已经存在于目标中的文件。
  /K 复制属性。一般的 Xcopy 会重设只读属性。
  /N 用生成的短名复制。
  /O 复制文件所有权和 ACL 信息。
  /X 复制文件审核设置(隐含 /O)。
  /Y 禁止提示以确认改写一个现存目标文件。
  /-Y 导致提示以确认改写一个现存目标文件。
  /Z 用重新启动模式复制网络文件。

二、Xcopy命令实例介绍

1、本机复制文件或文件夹的实例

  命令解释:将D盘的UpdateFiles文件夹中包含的所有东西,全部复制到E盘的123文件夹内;/s /e /y 参数说明:在复制文件的同时也复制空目录或子目录,如果目标路径已经有相同文件了,使用覆盖方式而不进行提示。

2、在局域网中的应用实例

deploy_的Web项目批处理,但排除商品图片目录,因为它太大且不常更新,

重复使用上面那个排除文件“web_exclude.txt”,再加一个排除商品图片的排除文件
“web_exclude_prodImages.txt”,这样要在一个命令中使用多个排除文件列表,用到加号“+”:

 

到此这篇关于Xcopy命令参数使用介绍的文章就介绍到这了,更多相关Xcopy内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

未整理,来源网络稍后整理,

COPY命令只能复制文件,不能复制文件夹。


/Y 取消提示以确认要覆盖

例1,把123.txt复制到d:目录下。如果此操作成功,命令行窗口中会提示“已复制1个文件”。
例2,把123.txt复制到d:目录下,并把它修改为abc.bat,这里修改了文件名和它的格式。
例3,把当前目录下的123子目录中的文件全部拷到当前目录。
例1,将c:123目录中所有文件复制到d:abc目录中。
例2,将c:123目录中所有rm格式的文件复制到d:abc目录中,当目标目录中已经存在了和源目录中即将复制的文件相
同文件名的文件时,就会出现如“改写x:xx吗?(Yes/No/All):”这样的提示,让你选择是覆盖、不覆盖还是全部覆
盖,通过参数/y(复制单个文件或批量复制时皆可使用),可以实现重名文件无须确认直接覆盖。
例2,把1.txt和2.mp3合并,这里没有指定合成后的文件名哦,缺省情况下,合并后的文件名是命令中的第一个文件的
名。在这里,即把2.mp3合并进了1.txt。


copy test.txt +复制文件到自己,实际上是修改了文件日期

复制 d:/123 文件夹、所有子文件夹和文件到 e:/,覆盖已有文件
加 /i 表示如果 e:/ 没有 123文件夹就自动新建一个,否则会有询问
/S 复制目录和子目录,不包括空目录。
/E 复制目录和子目录,包括空目录。
/Y 取消提示以确认要覆盖
/I 如果目标不存在,且要复制多个文件,
则假定目标必须是目录。
————————————————

.bat是dos下的批处理文件
.cmd是nt内核命令行环境的另一种批处理文件
从 更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由 专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。所以从某个程度分析,batch, unix shell, awk, basic, perl 等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同而已。甚至有些应用程序仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全 不同。

首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。

批 处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普通数据性文件,这缘于windows系统这个新型解释平台的涉入,使得批处理的应 用越来越"边缘化"。所以我们讨论的批处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动。

其 次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来 循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括 内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。

批 处理文件(batch file)也可以称之为批处理程序(batch program),这一点与编译型语言有所不同,就c语言来说,扩展名为c或者cpp的文件可以称之为c语言文件或者c语言源代码,但只有编译连接后的 exe文件才可以称之为c语言程序。因为批处理文件本身既具有文本的可读性,又具有程序的可执行性,这些称谓的界限是比较模糊的。

第 三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个 良好的习惯是在硬盘上建立一个bat或者batch目录(例如C:BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置 上c:batch,你就可以在任意位置运行所有你编写的批处理程序。

纯以dos系统而言,可执 行程序大约可以细分为五类,依照执行优先级由高到低排列分别是:DOSKEY宏命令(预先驻留内存), 直接载入内存),以exe位扩展名的可执行程序(由 解释分析,根据其内容按优先级顺序调用第2,3,4,5种可执行程序,分析一行,执行一行,文件本身不载入内存)
LH 启动时解释执行;
而在Win9x环境中,不仅增加支持了 解释命令行时将 = 作为命令行切分符而忽略掉罢了


二、goto 批处理文件运行到这里将跳到goto所指定的标号(标号即label,标号用:后跟标准字符串来定义)处,goto语句一般与if配合使用,根据不同的条件来执行不同的命令组。

标号用":字符串"来定义,标号所在行不被执行。

label 常被译为 "标签" , 但是这并不具有广泛的约定性.

goto 与 : 联用可实现执行中途的跳转, 再结合 if 可实现执行过程的条件分支, 多个 if 即可实现命令的分组, 类似 C 中 switch case 结构或者 Basic 中的 select case 结构, 大规模且结构化的命令分组即可实现高级语言中的函数功能. 以下是批处理和C/Basic在语法结构上的对照:

## 第三区:虚拟主机
# VirtualHost:你可以通过设置虚拟主机容器以实现在你的主机上保有多个
# 域名/主机名。大多数配置信息只使用基于名字的虚拟主机,因此服务器
# 不必担心IP地址的问题,下面的命令以*号代替虚拟主机名。
# 在你试着配置你的虚拟主机以前,请参见
# ......以取得更多的信息。
# 你可以使用命令行选项“-S”来检验你的虚拟主机配置。

我要回帖

更多关于 xcopy复制指定文件 的文章

 

随机推荐