Board logo

标题: [文件操作] 批处理如何实现文件跳级提取文件夹文件路径 [打印本页]

作者: kawa47    时间: 2018-1-4 12:33     标题: 批处理如何实现文件跳级提取文件夹文件路径

在一个文件夹下面有很多子级目录,我需要提取下面的大于100k的dat文件。把这个这些文件和目录复制到另外一个路径,还是先看图和环境吧。
[attach]11010[/attach]图一
[attach]11009[/attach]图二


实现目的:

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


代码如下:
  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
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2