copy和xcopy实现复制文件和文件目录

news2024/11/26 21:20:40

copy命令复制文件

语法

copy [/d] [/v] [/n] [/y | /-y] [/z] [/a | /b] <source> [/a | /b] [+<source> [/a | /b] [+ ...]] [<destination> [/a | /b]]

参数说明

参数说明
/d允许加密的源文件保存为解密的目标文件
/v验证目标文件是否正确写入
/n如果需要,在复制文件名大于8字符或者文件扩展名大于3字符的文件时,可以用短文件名重新命名目标文件
/y强制覆盖目标文件
/-y带确认框的覆盖目标文件
/z以可重新开始模式(restartable mode:就是说如果有网络问题打断了文件复制,当网络恢复时,可以断点续传的意思,不必再重新复制整个文件)复制网络文件
/a表示复制成为ascii目标文件
/b表示复制成为二进制目标文件
<source>必需。指定需要复制的文件源,可以指定一个或者多个。源可以是系统盘符,加冒号,加文件目录,再加文件名的源,也可以是其中的组合
<destination>必需。指定需要复制的文件源,可以指定一个或者多个。目标是系统盘符,加冒号,加文件目录,再加文件名的源,也可以是其中的组合
/?列出命令帮助框

示例

复制文件至目录

copy test1.txt c:\Users\Administrator\Desktop\test2 #将当前目录下的test1.txt复制到c:\Users\Administrator\Desktop\test2目录
copy test* c:\Users\Administrator\Desktop\test2 #将当前目录下的test开头的文件复制到c:\Users\Administrator\Desktop\test2目录
copy /y test* c:\Users\Administrator\Desktop\test2 #不提示直接覆盖地复制文件

合并文件

copy /y /b test1.txt + test2.txt test3.txt #这里的/b参数,指示复制结束字符

以上命令表示将test1.txt和test2.txt文件合并至test3.txt。/b表示复制结束字符,/y表示如果test3.txt存在,则直接覆盖test3.txt。

xcopy复制文件及目录

语法

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:FileName1[+[FileName2]][+[FileName3]]] [{/y | /-y}] [/z] [/b] [/j] [/compress]

参数说明

参数说明
<source>必需。 指定要复制的文件的位置和名称。 此参数必须包括驱动器或路径。
[<destination>]指定要复制的文件的目标。 此参数可以包括驱动器号后接冒号、目录名、文件名或这几项的组合。
/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 不会修改源文件的存档文件(存档文件是一种文件格式,用于存储一组文件以及与这些文件有关的信息(元数据)。创建存档文件的目的是将多个文件存储在一起,通常采用压缩格式,这样可以提高可移植性,同时节省磁盘上的存储空间。)属性。
/m复制设置了存档文件属性的源文件。 与 /a 不同,/m 会关闭源中指定的文件的存档文件属性。
/n使用 NTFS 短文件名或目录名创建副本。 将文件或目录从 NTFS 卷复制到 FAT 卷,或者当目标上需要 FAT 文件系统命名约定(即 8.3 命名规则字符)时,/n 是必需的。 destinatio* 文件系统可以是 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在文件传输期间请求网络压缩(如果适用)。
/?在命令提示符下显示帮助。

示例

复制源文件夹至目标文件夹

xcopy test1 test2 /s /e #复制源文件夹及其下的子目录,即使子目录为空。
xcopy test1 test2 /s /e /h #复制源文件夹及其下的子目录,即使子目录为空。/h指示复制系统文件和隐藏文件
xcopy test1 test2 /d #复制最近更新过的文件,也可以在/d后指定某个日期后更新的文件。如/d:07-15-2023,指示只复制2023-07-15之后更新过的文件。
xcopy test1 test2 /u #更新所有文件,不考虑日期
xcopy test1 test2 /s /e /k /p #复制目录及其子目录文件,并保留只读属性(/k)和提示确认是否创建每个目标文件
xcopy test1 test2 /s /y #只复制非空目录,并且直接覆盖不提示

只复制文件列表

xcopy test1 test2 /d:01-01-2023 /l /s /e > log.out #获取test1目录及其子目录下的文件的列表,并输出到log.out,但不实际复制文件

自定义cmd命令来处理拷贝异常

首先创建copyit.cmd批处理文件,然后在命令行执行该文件,输入源和目标

@echo off
rem copyit.cmd 复制文件夹及其子文件夹
rem %1 代表源文件或文件夹
rem 2% 代表目标文件或文件夹或驱动器盘符
xcopy %1 %2 /s /e
if errorlevel 4 goto lowmemory
if errorlevel 2 goto abort
if errorlevel 0 goto exit
:lowmemory
echo 磁盘空间不足或者驱动器盘符和命令语法错误。
goto exit
:abort
echo 按下 CTRL+C 结束当前操作
goto exit
:exit

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/760033.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

kubesphere的CICD

安装 SonarQube 服务器 请先安装 Helm&#xff0c;以便后续使用该工具安装 SonarQube。例如&#xff0c;运行以下命令安装 Helm 3&#xff1a; curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash查看 Helm 版本 helm versionversion.Buil…

3D渲染速度慢,花重金买显卡还是用云渲染更划算

3D渲染对建筑师和设计师来说并不陌生&#xff0c;3D渲染的过程中出现渲染卡顿、特殊材质难以渲染&#xff0c;或者本地配置不足、本地渲染资源不够时&#xff0c;常常会影响工作效率。本文比较了3D渲染时&#xff0c;为提高工作效率&#xff0c;买显卡还是用云渲染更划算&#…

SystemVerilog 教程第二章数据类型:队列

SystemVerilog 队列 SystemVerilog queue&#xff08;队列&#xff09;是一种 First In First Out&#xff08;先入先出&#xff09;方案&#xff0c;您可为其设置变量大小&#xff0c;用于存储相同数据类型的各种元素。 它与一维解包阵列类似&#xff0c;同样可以自动伸缩调整…

zabbix 6.0 监控LNPM环境

这里的LNPM是指Linux&#xff0c;Nginx,php-fpm和Mysql.具体版本如下。 Linux : centos7.9Nginx: 1.22.1php-fpm:7.4Mysql: 8.0 一、centos7.9 编译安装Nginx 为了弄清楚Nginx各种配置&#xff0c;我们采用编译安装的形式部署Nginx。 1.下载安装包 首先下载Nginx软件包&am…

unity 调用C++ dll 有类和指针操作

这个在之前unity 调用C dll 操作升级套娃函数调用_天人合一peng的博客-CSDN博客的基础上&#xff0c;但实事时类相互嵌套&#xff0c;非常不好处理。 1 测试直接将main()生成dll程序能运行不。 发现是可以的。 2 那就是想方法把对象或指针的操作的下一级函数直接写到main里面&…

简单认识数据库用户管理

文章目录 一、数据库用户管理1、新建用户&#xff08;1&#xff09;创建用户使用明文设置密码&#xff08;2&#xff09;获取密文再给新用户设置密码&#xff08;3&#xff09;查看数据库用户和其他信息&#xff08;4&#xff09;查看当前登录用户信息 2.修改数据库用户相关信息…

漏洞复现-CVE-2023-33246 Apache RocketMQ RCE漏洞原理与复现

目录 漏洞原理漏洞描述影响范围 Apache RocketMQ学习文档学习代码审计 漏洞复现docker环境搭建exp代码 总结参考 漏洞原理 漏洞描述 For RocketMQ versions 5.1.0 and below, under certain conditions, there is a risk of remote command execution. Several components of…

Wine的调试方法

wine的运行管理 # 运行exe程序 wine <exe程序># 运行msi程序 wine msiexec /i <msi程序> wine start <msi程序># 静默安装 wine <exe程序> /q /doNotRequireDRMPrompt /noupdate# 杀掉wine进程 wineserver -k pkill wine配置wine 配置环境变量 # 配…

GD32f103系列外部晶振更改

GD32f103系列的芯片现在基本很普通了&#xff0c;外部很多资料都是使用8MHz晶振为CPU提供主频。很多的时候由于项目的原因&#xff0c;外部晶振会更换不同的频率&#xff0c;有4MHz或者12Mhz的&#xff0c;因此需要在系统文件中做一些更改。 以8MHz晶振转12MHz晶振为例&#x…

Redis(三)存储原理与数据模型(hash冲突、渐进式rehash)

Redis系列文章 Redis&#xff08;一&#xff09;原理及基本命令&#xff08;柔性数组&#xff09; Redis&#xff08;二&#xff09;网络协议和异步方式&#xff08;乐观锁&悲观锁&#xff09; Redis&#xff08;三&#xff09;存储原理与数据模型&#xff08;hash冲突、渐…

chatGPT指令大全可免费使用网站列表chatGPT4试用方案

指令列表 写作助理 &#x1f449; 最常使用的 prompt&#xff0c;用于优化文本的语法、清晰度和简洁度&#xff0c;提高可读性。作为一名中文写作改进助理&#xff0c;你的任务是改进所提供文本的拼写、语法、清晰、简洁和整体可读性&#xff0c;同时分解长句&#xff0c;减少…

【CesiumJS入门】(7)绘制多段线(动态实时画线)

前言 鼠标左键添加点、右键完成绘制,单击右侧弹窗关闭按钮清空绘制。参考沙盒示例&#xff1a;Drawing on Terrain 直接上代码了 /** Date: 2023-07-12 18:47:18* LastEditors: ReBeX 420659880qq.com* LastEditTime: 2023-07-16 16:26:19* FilePath: \cesium-tyro-blog\s…

【动手学深度学习】--07.数值稳定性、模型初始化、激活函数

文章目录 数值稳定性、模型初始化、激活函数1.数值稳定性1.1举例1.2数值稳定性的常见两个问题1.3梯度爆炸1.4梯度消失1.5打破对称性 2.模型初始化2.1让训练更加稳定2.2权重初始化2.3Xavier初始 3.激活函数 数值稳定性、模型初始化、激活函数 学习视频&#xff1a;数值稳定性 …

vue3后台管理系统实现动态侧边导航菜单管理(ElementPlus组件)

记住 一级(el-sub-menu)的都是只是展示的 点击跳转的都是一级下的子级(el-menu-item) 完整展示 1:在登陆功能进行登陆 获取menu列表 注册路由表的时候 把文件进行创建好 因为注册的方法需要获取这个路径 整个router下的main product等等都要创建 //1:发送你的用户名和密码获…

Linux--进程终止

一、进程终止时&#xff0c;操作系统做了什么&#xff1f;&#xff1f; 释放进程申请的相关内核数据结构和对应的代码和数据 本质就是释放系统资源&#xff08;最主要的资源是内存&#xff09; 二、进程终止的常见方式&#xff1f; a.代码跑完&#xff0c;结果正确 b.代码跑完&…

【我的2023上半年总结】感谢CSDN:第一次100w+阅读,赚大了!

大家好&#xff0c;这里是程序员晚枫。 因为工作一般都是996的原因&#xff0c;今天是2023上半年少有的周六休息日&#xff0c;正好看到平台的#2023年中总结#活动&#xff0c;赶紧来分享一下这半年的自媒体收获~ 主要说一些开心的事情 1、CSDN CSDN账号&#x1f449;Python…

MySQL的循环语句分析

1.while循环 复制 -- 设置mysql分隔符为//,也就意味着,当遇到下一个//时,整体执行SQL语句 DELIMITER //DROP PROCEDURE if EXISTS &lsquo;test&rsquo;; # 如果存在test存储过程则删除CREATE procedure test() # 创建无参存储过程,名称为testBEGIN DECLARE i I…

配置 Vite 的环境变量与模式 (.env mode)

目录 创建项目环境变量内建变量创建.env 文件定义变量HTML 环境变量替换 模式 创建项目 npm create vitelatest or yarn create vite or pnpm create vite 环境变量 Vite 在一个特殊的 import.meta.env 对象上暴露环境变量。 console.log(import.meta.env)内建变量 import.met…

关于chatGPT、AI绘画、AI提词器等AI工具国内如何使用

目前的AI潮流非常火热&#xff0c;OPENAI 出的CHATGPT可谓是目前大模型人工智能的代表&#xff0c;刚开始听说chatGPT可以写代码&#xff0c;写作&#xff0c;写方案&#xff0c;无所不能。还有AI绘画也很&#xff2e;&#xff22;作为一个程序员&#xff0c;为了体验这些&…

python+pytest接口自动化之参数关联

目录 一. 参数关联场景 二. 脚本编写 1. 在用例中按顺序调用 2. 使用Fixture函数 三. 总结 什么是参数关联&#xff1f; 参数关联&#xff0c;也叫接口关联&#xff0c;即接口之间存在参数的联系或依赖。在完成某一功能业务时&#xff0c;有时需要按顺序请求多个接口&…