leonca 发表于 2020-10-23 21:08

批量在文件名指定位置增加字符

在吾爱破解久了,天天都是拿来主义,时间长了有些不好意思。特地奉献上自己的一段成熟的批处理代码

还是批处理啊,怎么使用就不说了,直接保存为bat格式即可。
如果乱码,就在txt文本另存为时,注意编码改为ASNI

批处理实现的功能为:在文件名指定位置增加字符
当指定位置大于文件名字符串长度时,会添加到文件名最后
当指定位置为0时,会添加在文件名最前面

直接运行批处理即可,里面会有提示,根据提示来操作。
非常成熟的批处理代码,我自己用了很久了。

如果大家喜欢,动动你们的小手,点击一下免费评分,谢谢

@echo off
title 批量在文件名指定位置增加字符
echo. & echo 本批处理仅处理一级目录,不处理多级目录的文件,如要处理多级目录,请修改代码
echo. & set "stm=%~dp0"
:AA
echo. & set /p "stm=输入路径(默认批处理所在路径):"
cd /d "%stm%"
:S
echo. & set /p "stn=输入文件类型:"
::添加的字符串
echo. & set /p "str=输入要增加的字符串:"
::设置位置
echo. & echo 下面将会指定要加的位置,当输入的数字大于整个字符串长度时,会在末尾加,当输入的数字为0时,会加在最前面
echo. & set /p "pot=要在第几个字符后增加字符串:"
for /f "delims=" %%a in ('dir /a-d /b %stn%') do if "%%~xa" neq ".bat" (
        setlocal enabledelayedexpansion
        set "var=%%~na"
        set "vam=%%~xa"
        set "var1=!var:~,%pot%!" ::将前几位赋值给var1
        set "var2=!var:~%pot%!" ::将后几位赋值给var2
        ren "%%a" "!var1!%str%!var2!!vam!
        setlocal disabledelayedexpansion
)
echo.
echo 已完成。。。。。。。。。
echo.
echo ===============================================================
echo.& echo 【1】……更换路径
echo.& echo 【2】……继续在当前目录替换
echo.
set /p "xuan= 请选择【1】或【2】:"
echo.
if %xuan% equ 1 goto AA else(
    if %xuan% equ 2 goto S
)
echo. & pause

余中鱼 发表于 2020-10-24 00:34

看你说的那么好先收藏了,就是不知道做什么用的😄
页: [1]
查看完整版本: 批量在文件名指定位置增加字符