找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 16306|回复: 1

[文件操作] [分享]批处理复制指定的子文件夹且保持权限不变

[复制链接]
发表于 2021-11-20 11:55:02 | 显示全部楼层 |阅读模式
【问题描述】

这样的一个文件夹布局,需要复制1文件夹下多个文件夹Folder1、Folder2、Folder3、...下面的子级文件夹B和C里面所有内容到目标地址2文件夹,权限不变,这种选择性的复制咋个写?

tree /f

├─1
│  ├─Folder1
│  │  │  
│  │  ├─A
│  │  │      1.jpg
│  │  │      
│  │  ├─B
│  │  │      1-B.jpg
│  │  │      
│  │  ├─C
│  │  │  │  1-C.png
│  │  │  │  
│  │  │  └─C-1
│  │  │          C-1-C.png
│  │  │         
│  │  └─D
│  ├─Folder2
│  │  │  
│  │  ├─A
│  │  │      4.jpg
│  │  │      
│  │  ├─B
│  │  │      2-B.txt
│  │  │      
│  │  └─C
│  │          2-C.jpg
│  │         
│  └─Folder3
├─2
│  │  
│  ├─Folder1
│  │              
│  ├─Folder2
 楼主| 发表于 2021-11-20 11:55:52 | 显示全部楼层
【解决方案】
  1. @echo off
  2. REM 指定待处理的文件夹目录
  3. set "SrcFolder=C:\Users\Administrator\Desktop\1"
  4. REM 指定复制到哪一个文件夹目录
  5. set "DstFolder=C:\Users\Administrator\Desktop\2"
  6. REM 指定需要复制哪几个子文件夹
  7. set CopyList="B" "C"

  8. for /f "delims=" %%i in ('dir /b /ad "%SrcFolder%"') do (
  9.     echo 正在处理文件夹 %SrcFolder%\%%i
  10.     for %%j in (%CopyList%) do (
  11.         if exist "%SrcFolder%\%%i\%%~j" (
  12.             xcopy /e /y /o "%SrcFolder%\%%i\%%~j" %DstFolder%\%%i\%%~j\
  13.         )
  14.     )
  15. )
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 21:55 , Processed in 0.027273 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表