标题: [文件操作] [分享]批处理对文件名包含指定字符的文件进行重命名 [打印本页]
作者: Batcher 时间: 2021-12-31 16:44 标题: [分享]批处理对文件名包含指定字符的文件进行重命名
【问题描述】
一个文件夹中几十上百个文本文档,它们的文档名称大多是,举例如下,
2017000000-z空001.tpp
201600679999_f厚0003.tpp
200065678884332.a00白090.tpp
10976号码53335567777.-b78007.tpp
123345666685696枫林1_25004.tpp
23158866842695566_a006.tpp
,,,,,,,
这些文档名称绝大部分都会含有z,f,a,b四个字母中的一个,文档名中任何地方也有可能有中文汉字和标点符号.-_等等,我想弄一个bat批处理工具,只要双击运行一下这个工具,那么这个文件夹中的所有含有字母f和字母b的文档名称就会发生改变,自动在文档名称的第6个字符后面添加上中文3字-先下载
举例如下,
双击批处理后,文件夹中所有包含f和b字母的tpp文档名称都自动在全名第6个字符后面添加先下载三个汉字。
其它文档名称保持不变,包含z和a的文档名称也保持不变,
下面是自动添加改变后的名称
201600先下载679999_f厚0003.tpp
10976号先下载码53335567777.-b78007.tpp
作者: Batcher 时间: 2021-12-31 16:44
【解决方案】- @echo off
- setlocal enabledelayedexpansion
- cd /d "%~dp0"
- for /f "delims=" %%i in ('dir /b /a-d *.tpp') do (
- set "OldName=%%~ni"
- set "NewName=!OldName:f=!"
- set "NewName=!NewName:b=!"
- if "!NewName!" neq "!OldName!" (
- ren "%%i" "!OldName:~0,6!先下载!OldName:~6!%%~xi"
- )
- )
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |