bat 复制文件和文件夹(目录)

copy(只能复制文件)

源文件路径:一个文件、多个文件、一类文件(abc.*)、文件夹下文件(仅文件夹下所有文件,不包含子文件夹)。
目标位置:制定文件名(多文件时会被合并)、文件夹路径内

D:\工作项目文档\wamp>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 abc.txt new_abc.txt
copy abc.txt .\test\
copy abc.* .\test\
copy .\abc.* all_file.txt
copy dir_name\ .\test\

xcopy(复制文件和目录)

XCOPY是COPY的扩展,可以把指定的目录连文件和目录结构一并拷贝,但不能拷贝系统文件

D:\工作项目文档\wamp>xcopy /?
复制文件和目录树。XCOPY source [destination] [/A | /M] [/D[:date]] [/P] [/S [/E]] [/V] [/W][/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U][/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z] [/B] [/J][/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 相同。可以用来修改 /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           在可重新启动模式下复制网络文件。/B           复制符号链接本身与链接目标。/J           复制时不使用缓冲的 I/O。推荐复制大文件时使用。开关 /Y 可以预先在 COPYCMD 环境变量中设置。这可能被命令行上的 /-Y 覆盖。

例子(复制文件夹):
注:

  1. 反复测试后,感觉拷贝目录时无法拷贝目录名本身(估计和copy一样,只识别目录下的),只能在destination(目标路径)里再指定一遍。(有没有高手指点一下?
  2. 目标路径后要加“\”,否则会询问目标路径是否为文件夹。
  3. 目标路径后不能有多余的“\”(错误示例:.\test\\)。
::/E 复制目录和子目录,包括空的。/Y 取消提示以确认要覆盖现有目标文件 。/H 也复制隐藏和系统文件。/R 改写只读文件。 /Q 复制时不显示文件名。
xcopy .\dir_name .\test\dir_name\ /e /y /h /r /q


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部