xcopy命令介绍
Windows 10中的xcopy命令用于复制文件和目录。它可以在不同的驱动器之间复制文件,也可以复制目录及其子目录。xcopy命令的语法如下:
xcopy [源路径] [目标路径] [选项]
其中,源路径是要复制的文件或目录的路径,目标路径是复制到的位置,选项可以是以下之一或多个:
参数 说明 源路径 必需。 指定要复制的文件的位置和名称。 此参数必须包括驱动器或路径。 目标路径 指定要复制的文件的目标。 此参数可以包括驱动器号后接冒号、目录名、文件名或这几项的组合。如果省略目标, xcopy
命令会将文件复制到当前目录。/W 在开始复制文件之前显示以下消息并等待你的响应:
按任意键开始复制文件/p 提示你确认是否要创建每个目标文件。 /c 忽略错误。 /v 在将每个文件写入目标文件时对其进行验证,以确保目标文件与源文件相同。 /q 禁止显示 xcopy
消息。/f 复制时显示源文件名和目标文件名。 /l 生成要复制的文件列表,但不主动复制文件。 /g 当目标不支持加密时创建解密的目标文件。 /d [:MM-DD-YYYY] 仅复制在指定的日期或之后更改的源文件。 如果不包含 MM-DD-YYYY 值,则 xcopy
会复制比现有目标文件更新的所有源文件。 此命令行选项可用于更新已更改的文件。/u 从仅存在于目标上的源复制文件。 /i 如果源是目录或包含通配符,并且目标不存在,则 xcopy
会假设目标指定了目录名,并会创建新目录。 然后,xcopy
将所有指定文件复制到新目录中。 默认情况下,xcopy
会提示你指定目标是文件还是目录。/s 复制目录和子目录,除非它们是空的。 如果省略 /s,则 xcopy
在单个目录中运行。/e 复制所有子目录,即使它们是空的。 将 /e 与 /s 和 /t 命令行选项结合使用。 /t 仅复制子目录结构(即树),而不复制文件。 若要复制空目录,必须包含 /e 命令行选项。 /k 复制文件,并保留目标文件的只读属性(如果存在于源文件上)。 默认情况下, xcopy
会删除只读属性。/r 复制只读文件。 /h 复制具有隐藏文件和系统文件属性的文件。 默认情况下, xcopy
不会复制隐藏文件或系统文件/a 仅复制设置了存档文件属性的源文件。 /a 不会修改源文件的存档文件属性。 有关如何使用 attrib 设置存档文件属性的信息,请参阅相关链接。 /m 复制设置了存档文件属性的源文件。 与 /a 不同,/m 会关闭源中指定的文件的存档文件属性。 有关如何使用 attrib 设置存档文件属性的信息,请参阅相关链接。 /n 使用 NTFS 短文件名或目录名创建副本。 将文件或目录从 NTFS 卷复制到 FAT 卷,或者当目标上需要 FAT 文件系统命名约定(即 8.3 命名规则字符)时,/n 是必需的。 目标文件系统可以是 FAT 或 NTFS。 /o 复制文件所有权和自由访问控制列表 (DACL) 信息。 /x 复制文件审核设置和系统访问控制列表 (SACL) 信息(隐含 /o)。 /exclude:FileName1[+[FileName2]][+[FileName3]( )] 指定文件列表。 必须至少指定一个文件。 每个文件将包含搜索字符串,每个字符串在文件中独占一行。 当任一字符串与要复制的文件的绝对路径的任一部分匹配时,将排除该文件的复制。 例如,指定字符串 obj 将排除目录 obj 下的所有文件,或扩展名为 .obj 的所有文件。 /y 禁止提示你确认覆盖现有目标文件。 /-y 提示你确认覆盖现有目标文件。 /z 以可重启模式通过网络复制。 /b 复制符号链接,而不复制文件。 此参数是在 Windows Vista® 中引入的。 /j 复制文件而不缓冲。 建议用于非常大的文件。 此参数是在 Windows Server 2008 R2 中添加的。 /compress 在文件传输期间请求网络压缩(如果适用)。 /? 在命令提示符下显示帮助。 /sparse 支持在复制期间保留文件的稀疏状态。
使用案例
1)复制文件:
xcopy C:\source\file.txt D:\destination\
这个命令将把C盘的source文件夹下的file.txt文件复制到D盘的destination文件夹下。
2)复制目录及其子目录:
xcopy C:\source\folder D:\destination\
这个命令将把C盘的source文件夹下的folder目录及其子目录复制到D盘的destination文件夹下。
3)复制目录及其子目录,但不包括空目录:
xcopy C:\source\folder /s D:\destination\
这个命令将把C盘的source文件夹下的folder目录及其子目录复制到D盘的destination文件夹下,但不包括空目录。
4)若要获取命令复制的文件的列表(即,不实际复制文件)
xcopy D:\rawdata\reports /d:12-29-1993 /l > xcopy.out
文件 xcopy.out 列出了要复制的每个文件。
更多使用案例,可以阅读 xcopy examples