fengzhengfeng 当前离线
列兵
@ECHO OFF setlocal enabledelayedexpansion ECHO 本批处理文件用来将文件所在目录名和连接符加在文件名前。 :: 将文件所在目录名和连接符加在文件名前。 ECHO= ECHO 本批处理默认设置为将ogg文件所在目录名和连接符a加在文件名前。 ECHO 本批处理将依次分步执行以下命令: ECHO 1、设置文件扩展名。 ECHO 2、设置连接符。 ECHO 3、开始重命名,公式为:新文件名=目录名+连接符+原文件名。 ECHO= SET /p All=是否使用默认设置?(Y/N): IF %All% EQU Y ( GOTO AllY ) ELSE ( GOTO AllN ) :AllY SET Extension=ogg SET Connector=a SET RenCommand=Y GOTO Start :AllN SET Extension="" SET Connector="" SET RenCommand="" GOTO Start :Start :: 1、设置文件扩展名。 IF %All% NEQ Y ( SET /p Extension=请输入文件扩展名: ) :: IF "%Extension%" EQU "ogg" ( :: ) :: 2、设置连接符。 IF %All% NEQ Y ( SET /p Connector=请输入连接符: ) :: IF "%Connector%" EQU "a" ( :: ) :: 3、开始重命名,公式为:新文件名=目录名+连接符+原文件名。 IF %All% NEQ Y ( SET /p RenCommand=是否开始重命名?(Y/N): ) IF %RenCommand% EQU Y ( FOR /R %%a IN (*.%Extension%) DO ( FOR %%b IN ("%%a\..") DO ( ECHO 重命名公式为:新文件名=目录名+连接符+原文件名。 ECHO 重命名路径:%%a REN "%%a" "%%~nxb%Connector%%%~nxa" ECHO ---------------------------------------------------------------------- ) ) ) PAUSE复制代码
评分人数
happy886rr 当前离线
等待验证会员
@echo off setlocal enabledelayedexpansion echo 还原名称中... for /f "tokens=1,2 delims=▼" %%a in ('dir /s /b *.ogg^|find "▼"') do ( ren "%%a▼%%b" "%%b" ) if "%~n0"=="还原" (goto end) echo 重新命名中... for /f "delims=" %%a in ('dir /s /b *.ogg') do ( set "pre=%%~pa" ren "%%a" "!pre:\=丨!▼%%~nxa" ) :end echo 执行完毕!!! pause>nul复制代码
TOP
FOR /R %%a IN (*.%Extension%) DO (复制代码
FOR /F "delims=" %%a IN ('dir /a-d /b /s *.%Extension%') DO (复制代码
WHY 当前离线
上校
示例: echo 1 > 1.txt & echo 2 > 2.txt for %%f in (*.txt) do ren %%f f-%%f 效果:生成两个文件f-2.txt和f-f-1.txt ,1.txt 被改名后再次被改名 注释:在for 语句内使用ren 要谨慎,f-可以改为任意以字母开头的字符串