Windows命令提示符命令用来复制文件是什么?
我需要将文件从位置A移到位置B。同样,如果位置B的文件夹不存在,我也想创建它。
我需要将此作为命令行,以便可以将其自动化。
Windows的版本是XP。
Windows命令提示符命令用来复制文件是什么?
我需要将文件从位置A移到位置B。同样,如果位置B的文件夹不存在,我也想创建它。
我需要将此作为命令行,以便可以将其自动化。
Windows的版本是XP。
Answers:
该命令xcopy
是您要寻找的。例:
xcopy source destination /E /C /H /R /K /O /Y
上面的命令会将源复制到目标,文件和目录(包括空目录),不会因错误而停止,将复制隐藏文件和系统文件,将覆盖只读文件,将保留属性和所有权/ ACL信息,并禁止显示提示覆盖现有的目标文件。
/E Copies directories and subdirectories, including empty ones.
Same as /S /E. May be used to modify /T.
/C Continues copying even if errors occur.
/H Copies hidden and system files also.
/R Overwrites read-only files.
/K Copies attributes. Normal Xcopy will reset read-only attributes.
/O Copies file ownership and ACL information.
/Y Suppresses prompting to confirm you want to overwrite an
existing destination file.
有关更多信息,请键入xcopy /?
和您的命令行。
/E /H
并且可能/K /O
会通过一些方便的提示使您走得很远
使用md创建文件夹(如果已经存在就可以)
对文件使用复制或移动,对文件夹使用xcopy
在批处理文件中:
if not exists locationB\nul mkdir locationB
copy locationA\file locationB
if not exists
检查参数以查看其是否存在,但仅适用于文件。要检查目录是否存在,您需要查找一个名为“ nul”的“伪文件”-如果目录存在,则检查此文件的存在将始终返回true。
复制行将file
在目录中调用的文件复制到该文件locationA
,locationB
并使用相同的名称命名该文件。如果要同时重命名文件,也可以这样做:
copy locationA\file locationB\newfilename
如果要同步副本和其他高级功能(忽略某些文件夹,仅包括某些通配符),请查看robocopy
。包括在Vista和更高版本中,早期版本中是可选的(来自资源工具包工具)。
如果要创建备份脚本,请使用ROBOCOPY。xcopy已被弃用,并可能在不久的将来被淘汰。robocopy可以做xcopy可以做的一切。它也更加灵活和可靠。使用robocopy创建脚本将使它们过时。
使用robocopy轻松复制文件夹。robocopy命令替换xcopy命令。它可以快速复制整个文件夹,而不必担心定义内容。例如,要将C:\ tools目录的所有内容复制到新文件夹D:\ backup \ tools,请输入以下内容:
robocopy C:\tools D:\backup\tools /e
/ e修饰符告诉robocopy包含所有子目录。这包括空文件夹。robocopy将自动复制隐藏文件和系统文件。如果目标位置不存在新目录,它将创建新目录。
镜像目录。镜像目录非常适合进行备份。robocopy的mirror选项会将所有内容从源复制到目标。然后它将删除源中不存在的任何目标。这样可以确保您的备份仅包含文件的最新版本。例如,要将C:\ Users \ My Documents镜像到D:\ backup \ My Documents,请输入以下内容:[4]
robocopy "C:\Users\My Documents" "D:\backup\My Documents" /mir
此功能将保留原始文件的所有权限。
启用重新启动。您可能希望包括在复制过程中断开连接的情况下重新启动进程的功能。
robocopy "C:\Users\My Documents" "D:\backup\My Documents" /z
记录复制过程。robocopy允许您创建一个日志文件。这可以帮助您查明问题或生成复制内容的存档。
robocopy "C:\Users\My Documents" "D:\backup\My Documents" /log+:<filename>.txt
/ log +修饰符将附加现有的日志文件,而不是覆盖它。如果您只想覆盖旧的日志文件,请使用/log:.txt。
上面的命令使用源文件的名称创建一个附加目录级别。所以... xcopy / I srcdir \ dir1 \ dir2 \ file1.txt * destdir \ dir1 \ dir2 \ file1.txt导致destdir \ dir1 \ dir2 \ file1.txt \ file1.txt
robocopy
效果也很好