赞
踩
copy [/d] [/v] [/n] [{/y|/-y}] [/z] [{/a|/b}] Source [{/a|/b}] [+ Source [{/a|/b}] [+ …]][Destination [{/a|/b}]]
rem 如果文件夹不存在,则文件夹名abc直接当文件名
copy a.txt d:\abc
rem 按2进制拷贝,避免可能换行符文件终止符的转换
copy /b a.txt b.txt
rem 合并当前目录下所有指定类型的文件到指定文件中
copy *.txt merge.txt
rem 通过+来合并指定文件
copy a.txt+b.txt c.txt
rem 组合使用通配符*和+,将多种类型文件合并成一个
copy *.txt+*.ini abc.txt
rem 合并相同名字的不同类型文件为相应名字文件
copy *.txt+*.ini *.text
xcopy Source [Destination] [/w] [/p] [/c] [/v] [/q] [/f] [/l] [/g] [/d[:mm-dd-yyyy]] [/u] [/i] [/s [/e]] [/t] [/k] [/r] [/h] [{/a|/m}] [/n] [/o] [/x] [/exclude:file1[+[file2]][+[file3]] [{/y|/-y}] [/z]
使用 /exclude
列出每个文件的单独行中的每个字符串。如果列出的任何字符串与要复制的文件的绝对路径的任何部分匹配,就从复制进程排除该文件。例如,如果指定字符串 “\Obj”,则会排除 Obj 目录下的所有文件。如果指定字符串 “.obj”,则排除具有 .obj 扩展名的所有文件。
使用 /z
如果在复制过程中丢失连接(例如,如果用于连接的服务器脱机),复制过程将在重新建立连接后恢复。/z 也显示每个文件完成的复制操作的百分比。
在 COPYCMD 环境变量中使用 /y
可在 COPYCMD 环境变量中使用 /y。在命令行上使用 /-y 可以覆盖该命令。默认情况下,会提示您覆盖,除非您从批处理脚本内运行 copy。
复制加密的文件
将加密文件复制到不支持 EFS 的卷会导致错误。应首先解密文件或将文件复制到支持 EFS 的卷中。
附属文件
要附加文件,请指定单个目标文件,多个源文件(使用通配符或文件 1 + 文件 2 + 文件 3 格式)。
Destination 的默认值
如果省略 Destination,xcopy 命令将文件复制到当前目录。
指定 Destination 是文件还是目录
如果 Destination 不包含现有目录且不以反斜杠 () 结尾,会出现下列消息:
Does destination specify a file name
or directory name on the target
(F = file, D = directory)?
如果要将一个或多个文件复制到一个文件,请按 F。如果要将一个或多个文件复制到一个目录,请按 D。
使用 /i 命令行选项可抑制显示该消息,从而导致 xcopy 认定在源是多个文件或一个目录的情况下,目标是一个目录。
使用 xcopy 命令设置 Destination 文件的存档属性
xcopy 命令创建具有存档属性设置的文件,无论源文件中是否设定了此属性。有关文件属性和 attrib 的详细信息,请参阅“相关主题”。
比较 xcopy 和 diskcopy
如果磁盘的子目录中包含文件,要将其复制到具有不同格式的磁盘中,请使用 xcopy 命令,而不要使用 diskcopy。因为 diskcopy 命令是一个磁道接一个磁道地复制磁盘,所以需要源磁盘和目标磁盘的格式必须相同。xcopy 命令没有该要求。通常情况下请使用 xcopy,除非您需要完整的磁盘图像副本。
xcopy 的退出码
要处理 xcopy 返回的退出码,请在批处理程序的 if 命令行上使用 errorlevel 参数。有关使用“if”处理退出码的批处理程序的范例,请参阅“相关主题”。下表列出每一个退出码和说明。
退出码 说明
0 文件复制没有错误。
1 没有找到要复制的文件。
2 用户按 CTRL+C 终止了 xcopy。
4 出现了初始化错误。没有足够的内存或磁盘空间,或命令行上输入了无效的驱动器名称或语法。
5 出现了磁盘写入错误。
rem 复制文件
xcopy a.txt abc.txt
rem 复制文件到指定目录,如果目录不存在,则需要指定类型
xcopy a.txt d:\abc
rem 复制目录A到指定目录B(不包括子目录)
xcopy A D\
rem 复制目录A到指定目录B(包括子目录)
xcopy /e A D\
rem 只复制目录,不复制文件
xcopy /t A D\
rem 复制3-6-2018时间之后的文件到当前ABC目录
xcopy *.txt ABC\ /d:3-6-2018
rem 如果没有指定具体时间,则只复制目标目录中没有的文件
xcopy *.txt ABC\ /d
rem 只更新目标目录中已经存在的文件
xcopy *.txt ABC\ /u
@echo off
rem 如果有更多类型可以存放在文件中进行遍历
for %%a in (*.dll *.txt) do (
echo %%a
xcopy /e %%a ABC\
)
pause
.obj
.list
.pdb
rem 拷贝除指定目录中记录的文件外的文件
xcopy /e *.* ABC\ /exclude:exclude.txt
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。