DOS/BAT

关注公众号 jb51net

关闭
首页 > 脚本专栏 > DOS/BAT > 批处理 copy命令

批处理copy命令的具体使用

作者:大雄Obear

本文主要介绍了批处理copy命令的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文的命令说明来自与DOS命令帮助说明,如果与DOS命令帮助说明不同,请以DOS命令帮助说明为准。

语法

参数

$ 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 格式)。

示例

单个文件的复制

copy c:\123.txt d:\
把123.txt复制到d:\目录下。如果此操作成功,命令行窗口中会提示“已复制1个文件”。

copy c:\123.txt d:\abc.bat
把123.txt复制到d:\目录下,并把它修改为abc.bat,这里修改了文件名和它的格式。

copy .\123
把当前目录下的123子目录中的文件全部拷到当前目录。

批量复制文件

copy c:\123 d:\abc
将c:\123目录中所有文件复制到d:\abc目录中。

copy c:\123\*.rm d:\abc /y
将c:\123目录中所有rm格式的文件复制到d:\abc目录中,当目标目录中已经存在了和源目录中即将复制的文件相
同文件名的文件时,就会出现如“改写x:\xx吗?(Yes/No/All):”这样的提示,让你选择是覆盖、不覆盖还是全部覆
盖,通过参数/y(复制单个文件或批量复制时皆可使用),可以实现重名文件无须确认直接覆盖。

合并文件

copy /b d:\1.mp3 d:\2.mp3 e:\3.mp3
把1.mp3和2.mp3合并成3.mp3。

copy /b d:\1.txt d:\2.mp3
把1.txt和2.mp3合并,这里没有指定合成后的文件名哦,缺省情况下,合并后的文件名是命令中的第一个文件的
名。在这里,即把2.mp3合并进了1.txt。

假设,你需要把d:\test\test.txt这个文件复制到D盘根目录下,那么,使用 copy d:\test\test.txt d:\ 就可以轻易办到。

当然,这是最简单的情形,在实际使用中,还是会碰到十分复杂的情况的。
如果D盘根目录下已经存在了一个名为test.txt的文件,那么,复制过去的时候,copy命令就会提示你是覆盖原文件、是放弃复制还是覆盖所有文件。如果你在批量复制的时候,一概覆盖原文件,那么,一个一个地选择十分麻烦,这个时候,你可以使用不加提示就覆盖原文件的参数 /y (相当于自动选择了Yes选项),完整的命令为copy /y d:\test\test.txt d:\

如果复制的时候,你还需要把源文件改个名,比如把test.txt改为1.txt的时候,可以直接使用:copy d:\test\test.txt d:\1.txt这样的命令,也就是说,在指定目的路径的时候,直接指定文件名,那么,新的文件名就是源文件复制之后的名字。

如果要复制的路径带有空格、&等特殊符号的时候,请使用引号把这些特殊字符括起来,比如: copy "d:\test abc\test.txt" "d:\t&est"

copy命令除了“复制”文件的功能外,还有一个绝活:合并多个文件为一个文件,具体的格式为:copy 文件1+文件2+文件3+…… 目的路径\新文件名 。例如:copy d:\test.txt+d:\abc.txt d:\test\test.txt,那么,就把D盘根目录下的test.txt和abc.txt两个文件的内容合并为test.txt,并保存到d:\test目录下。

copy 还有一些参数,但是常用的就上面的用法,更多的用法请在命令行窗口中使用 copy /? 来查询,很容易上手的。
  必须注意的是,copy只能复制文件,对于文件夹的复制,则需要另请高明,动用xcopy来复制。xcopy是copy的高级版本,有更丰富的参数.

没有后缀的文件怎么复制?

没有后缀的文件无法使用xcopy复制,使用copy可正常复制
copy d:\web.xml d:\bcht-web-service\

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

您可能感兴趣的文章:
阅读全文