• Windows命令行XCOPY几种应用方法


    目录

    一、写在文章前

    二、测试数据描述

    三、应用

     应用一:复制文件夹内文件(不含目录)

    应用二:复制文件夹内文件(含目录、空目录;子目录文件也包含)

    应用三:仅复制文件夹内目录(含空目录及子目录)


    一、写在文章前

    在大量、重复、文件分散分布、仅想复制指定子文件夹或文件的情况下,使用命令行复制文件相对于使用资源管理器复制文件来说更加方便自如。windows系统中的文件复制命令为copy、xcopy。经过了解xcopy命令的参数,发现xcopy命令可以较好的实现文件目录及目录下文件的复制,具有一定的实用价值,故作记录。

    二、测试数据描述

    设有一个目录是F:\测试xcopy,其文件夹结构如下:

    1. F:\测试xcopy>dir /ad /b /s
    2. F:\测试xcopy\1
    3. F:\测试xcopy\2
    4. F:\测试xcopy\1\01

    F:\测试xcopy,其文件结构如下:

    1. F:\测试xcopy>dir /a-d /b /s
    2. F:\测试xcopy\1.csv
    3. F:\测试xcopy\1.docx
    4. F:\测试xcopy\1.txt
    5. F:\测试xcopy\1\1.csv
    6. F:\测试xcopy\1\1.docx
    7. F:\测试xcopy\1\1.txt
    8. F:\测试xcopy\2\1.csv

    三、应用

    xcopy命令可以代替copy命令执行更加复杂的文件复制工作。如使用copy来复制文件夹,则需要采用for、copy、md等命令来组合使用,实现思路是根据for命令来遍历需要读取的文件夹,在循环体内,先md创建文件夹,然后copy复制文件,较为麻烦,而xcopy可以使用一个命令完成上述操作。

     应用一:复制文件夹内文件(不含目录)

    首先创建目录F:\测试xcopy1,然后执行以下命令,可以看到仅复制了当前文件夹根目录下的文件,子目录文件及文件夹未复制。

    1. F:\测试xcopy>xcopy F:\测试xcopy
    2. F:\测试xcopy1 /i
    3. F:\测试xcopy\1.csv
    4. F:\测试xcopy\1.docx
    5. F:\测试xcopy\1.txt
    6. F:\测试xcopy\1.xlsx
    7. 复制了 4 个文件

    结合通配符,可以对要复制的文件进行筛选。

    1. F:\测试xcopy1>xcopy F:\测试xcopy\*.txt
    2. F:\测试xcopy\1.txt
    3. 复制了 1 个文件
    4. F:\测试xcopy1>dir F:\测试xcopy1 /b /s
    5. F:\测试xcopy1\1.txt

    应用二:复制文件夹内文件(含目录、空目录;子目录文件也包含)

    先清空F:\测试xcopy1下的文件及文件夹,执行以下xcopy命令,可以看到复制后的F:\测试xcopy1目录及文件与F:\测试xcopy的目录及文件相同。想要不包含,可以将参数/e 改为/s

    1. F:\>xcopy F:\测试xcopy F:\测试xcopy1 /i /e
    2. F:\测试xcopy\1.csv
    3. F:\测试xcopy\1.docx
    4. F:\测试xcopy\1.txt
    5. F:\测试xcopy\1.xlsx
    6. F:\测试xcopy\1\1.csv
    7. F:\测试xcopy\1\1.docx
    8. F:\测试xcopy\1\1.txt
    9. F:\测试xcopy\2\1.csv
    10. 复制了 8 个文件
    11. F:\>dir F:\测试xcopy1 /b /s
    12. F:\测试xcopy1\1
    13. F:\测试xcopy1\1.csv
    14. F:\测试xcopy1\1.docx
    15. F:\测试xcopy1\1.txt
    16. F:\测试xcopy1\1.xlsx
    17. F:\测试xcopy1\2
    18. F:\测试xcopy1\1\01
    19. F:\测试xcopy1\1\1.csv
    20. F:\测试xcopy1\1\1.docx
    21. F:\测试xcopy1\1\1.txt
    22. F:\测试xcopy1\2\1.csv

    以上命令的优化:

    适合在复制大文件时使用 

    xcopy F:\测试xcopy F:\测试xcopy1 /i /e /j 

    适合在需要覆盖文件且不需要提醒时使用

    xcopy F:\测试xcopy F:\测试xcopy1 /i /e /j /y

    应用三:仅复制文件夹内目录(含空目录及子目录)

    先清空F:\测试xcopy1下的文件及文件夹,执行以下xcopy命令,可以看到复制后的F:\测试xcopy1中只包含了源文件夹下的目录及子目录,没有文件被复制,适合仅复制文件夹结构时使用。

    1. F:\>xcopy F:\测试xcopy F:\测试xcopy1 /i /t /e
    2. F:\>dir F:\测试xcopy1 /b /s
    3. F:\测试xcopy1\1
    4. F:\测试xcopy1\2
    5. F:\测试xcopy1\1\01

  • 相关阅读:
    杭州亚运会实现核心系统100%上云、云上转播7200+小时
    Linux常用命令(下).
    linux shell 编程之运算符详解
    AMRT 3D 数字孪生引擎(轻量化图形引擎、GIS/BIM/3D融合引擎):智慧城市、智慧工厂、智慧建筑、智慧校园。。。
    【Swift 60秒】47 - Functions:Summary
    为什么sleeping的会话会造成阻塞
    【C语言深入理解指针(2)】
    品牌方发行NFT时,应如何考量实用性?
    【threejs教程12】threejs添加GUI控制工具
    消除springboot+thymeleaf时页面的红色波浪线告警
  • 原文地址:https://blog.csdn.net/wzw114/article/details/126762488