Board logo

标题: [文件操作] [已解决]批处理重命名文件夹 [打印本页]

作者: Zhangjianxiong    时间: 2020-5-25 19:32     标题: [已解决]批处理重命名文件夹

我有一个“生物学实习”的目录,里面有65个文件夹,文件夹的格式为"X植物名"。
第一个文件夹是”29藜“,最后一个文件夹是"93当归",中间没有间断。
现要对这些文件夹重新命名,从“X植物名”命名为“Y-植物名”,X为原编号,Y为新编号。
新编号Y要求从1开始,依次命名,不改变原来的顺序(如”29藜“重命名为"1-藜";”93当归“重命名为"65-当归")。

请教批处理如何实现
作者: flashercs    时间: 2020-5-25 20:43

  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. cd /d "%~dp0"
  4. set ctr=0
  5. for /d %%A in (*) do (
  6.   set "dirname=%%A"
  7.   set /a "ctr+=1"
  8.   echo ren "%%A" "!ctr!-!dirname:~2!"
  9.   ren "%%A" "!ctr!-!dirname:~2!"
  10. )
  11. endlocal
  12. pause
  13. exit /b
复制代码

作者: smss    时间: 2020-5-25 20:53

  1. @echo off&setlocal enabledelayedexpansion&set n=0
  2. for /f "delims=" %%i in ('dir /b/ad') do set /a n+=1&set "m=%%~ni"&ren "%%i" "!n!-!m:~2!"
  3. pause
复制代码

作者: Zhangjianxiong    时间: 2020-5-26 09:00

回复 2# flashercs


    谢谢,这正是我要的结果。
作者: Zhangjianxiong    时间: 2020-5-26 09:03

回复 3# smss


厉害,几行就解决问题了!
作者: 1152    时间: 2021-4-23 21:17

回复 1# Zhangjianxiong


    你叫张家龙?




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