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

[文件操作] 批处理如何实现文件跳级提取文件夹文件路径

[复制链接]
发表于 2018-1-4 12:33:18 | 显示全部楼层 |阅读模式
在一个文件夹下面有很多子级目录,我需要提取下面的大于100k的dat文件。把这个这些文件和目录复制到另外一个路径,还是先看图和环境吧。
图一
图二


实现目的:

需要把图一“20171114-20171115 5180”这目录下大于100k的dat文件及目录提取到另外一个文件夹,但是提取文件路径时候不提取(图二)标出来的这级目录,目录内的数据仍需要。效果见图如下
图三


代码如下:
  1. @echo off&setlocal enabledelayedexpansion
  2. set "p1=E:\Test"
  3. set "p2=E:\TestBackupConfig"
  4. set es=*.dat
  5. for /r "%p1%" %%i in (%es%)do (
  6.    echo %%i
  7.    set "ps=%%~dpi"
  8.    set "pd=!ps:%p1%=%p2%!"
  9.    if not exist "!pd!" md "!pd!"
  10.    copy/y "%%i" "!pd!">nul)
  11. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-20 07:21 , Processed in 0.024891 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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