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

[文件操作] 批处理如何将DBF文件,按子文件夹的名称。重命名之后,存储到另一个目录?

[复制链接]
发表于 2015-7-16 15:10:03 | 显示全部楼层 |阅读模式
需求如下:
有一个15425的目录,下面会按天生成,诸如20150715,20150716的子文件夹,
每个文件夹里,有3个DBF文件。例如A.DBF;B.DBF; C.DBF

现在想实现的效果是,所有子文件夹里的这些文件。文件名上都加上文件夹后缀。
例如文A.dbf,
在20150715子目录下,重命名为A_20150715.dbf
在20150715子目录下,重命名为A_20150716.dbf
同理其他子文件和子目录。

最终将这些文件,都放置到15425目录下的一个新的目录temp中。
相当将所有子文件夹下的文件,统一放置于一个新的目录里。

求解,哪位大侠帮忙看看这个需求,万分感谢。
发表于 2015-7-16 15:29:29 | 显示全部楼层
  1. @echo off
  2. md temp 2>nul
  3. for /d %%d in (*) do if not "%%~nd"=="temp" call :ren "%%d"
  4. exit
  5. :ren
  6. for /r %1 %%i in (*.dbf) do move /y "%%i" ".\temp\%%~ni_%~n1.dbf"
  7. rd %1
复制代码

评分

参与人数 1技术 +1 收起 理由
macherater + 1 太谢谢了

查看全部评分

发表于 2015-7-16 15:37:52 | 显示全部楼层
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /ad ^| findstr /i /v "temp"') do (
  3.     for /f "delims=" %%j in ('dir /b /a-d %%i\*.dbf') do (
  4.         ren "%%i\%%j" "%%~nj_%%i%%~xj"
  5.         move /y "%%i\%%~nj_%%i%%~xj" "temp"
  6.     )
  7. )
复制代码

评分

参与人数 1技术 +1 收起 理由
macherater + 1 太谢谢了

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 21:29 , Processed in 0.019074 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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