标题: [文件操作] 批处理如何批量给文件夹加序号前缀呢? [打印本页]
作者: mzp 时间: 2024-3-11 15:59 标题: 批处理如何批量给文件夹加序号前缀呢?
如何批量给文件夹加序号前缀呢
作者: hhak003 时间: 2024-3-12 16:44
- @echo off
- setlocal enabledelayedexpansion
- set /a count=1
-
- for /d %%i in (*) do (
- set "folder=%%i"
- set "newFolder=!count!_!folder!"
- ren "%%i" "!newFolder!"
- set /a count+=1
- )
-
- echo 批量添加序号前缀完成。
- pause
复制代码
------------------------------------------------
这段脚本的工作原理是:
@echo off 关闭命令回显。
setlocal enabledelayedexpansion 开启变量延迟环境扩展,以便在循环内部实时更新和使用变量。
初始化计数器 count 为 1。
使用 for /d %%i in (*) do (...) 遍历当前目录下的所有文件夹。
对每个文件夹,将其名称赋值给变量 folder。
创建新的文件夹名称 newFolder,格式为:序号(count)+ 下划线 + 文件夹名称。
使用 ren "%%i" "!newFolder!" 将原文件夹名称更改为带有序号前缀的新名称。
更新计数器 count 的值,使其在每次循环后递增。
最后输出提示信息,并暂停以防止窗口立即关闭。
作者: 77七 时间: 2024-3-12 18:49
- @echo off
- cd /d "%~dp0"
- set n=0
- for /d %%d in (*) do (
- set /a n+=1
- )
- for %%a in (1 10 100 1000 10000 100000 1000000) do (
- if %n% geq %%a (
- set /a m=%%a*10
- )
- )
- for /f "delims=" %%d in ('dir /b /ad') do (
- set str=%%d
- set /a m+=1
- setlocal enabledelayedexpansion
- ren "!str!" "!m:~1!_!str!"
- endlocal
- )
- pause
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |