如何用CMD批处理提取所有文件夹内的子文件按文件夹名称命名并提取到一个文件夹中

如何用批处理提取一堆文件夹中的子文件,(比如文件夹名称为:PN124049-10、PN125179-20、PN136468-30、PN136476-30。。。。每个子文件... 如何用批处理提取一堆文件夹中的子文件,(比如文件夹名称为:PN124049-10、PN125179-20、PN136468-30、PN136476-30。。。。每个子文件夹夹下面有都有一个子文件夹,子文件夹还有子文件夹,其中最里面的子文件夹里有个文件名为000001.tif格式的文件,我要把000001.tif文件重命名为文件夹各自的文件夹名前在前后加“+”号,(如+PN124049-10+.tif、+PN125179-20+.tif、+PN136468-30+.tif、+PN136476-30+.tif。。。。把然后把重命名后的文件提取到一个文件夹中并将文件夹名命名为当天日期;
以上是需求,请大神们帮忙,谢谢。
文件夹名;

双击GA000071100519;
双击GA000071100519;
双击GA000071100519,

如果遇到有多个tif文件,命名为“+文件夹名+(1)”“+文件夹+(2)”……
路径为:PN124049-10\GA000071100519\GA000071100519\000001.tif
展开
 我来答
f1375579737
2015-07-15 · 超过12用户采纳过TA的回答
知道答主
回答量:109
采纳率:0%
帮助的人:37.5万
展开全部
说这么复杂,直接 把文件重命名之后 同时打开第一个文件夹和 最后有文件的哪个文件夹,再把文件拖拉 过去 第一个 文件夹里边 就OK了,然后再把文件夹更名为当天日期 就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ijyfe
推荐于2016-07-23 · TA获得超过3000个赞
知道小有建树答主
回答量:1243
采纳率:25%
帮助的人:482万
展开全部
@echo off
set "var=%date:~0,10%
set "var=%var:/-=%"
for /f "delims=" %%a in ('dir /ad /b') do (
   pushd "%%a\"
   for /r %%b in (*.tif) do (
      move "%%b" "%var%\+%%a+%%~xb"
   )
   popd 
)
pause
更多追问追答
追问

试了一下,出现了这个问题。

追答

把这个批处理文件和那些文件夹放在一起运行

@echo off&setlocal enabledelayedexpansion
set "var=%date:~0,10%
set "var=%var:/-=%"
for /f "delims=" %%a in ('dir /ad /b') do (
   if exist "%%a" ( 
      pushd "%%a\"
      set n=0 
      for /r %%b in (*.tif) do (
         set / n+=1
         move "%%b" "%var%\+%%a+(!n!)%%~xb"
      )
   ) 
   popd 
)
pause
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式