[已解决]批处理如何替换文件夹名和文件名里的指定字符或字符串-akb4888的提问-批处理之家论坛

[已解决]批处理如何替换文件夹名和文件名里的指定字符或字符串 - BAT求助&讨论 - 批处理之家 批处理_BAT脚本_PowerShell_VBS_CMD_DOS_Perl_Python - Powered by Discuz!   

pcl_test 的回答:

 

@echo off
title 批量替换文件(文件夹)名
echo 此批处理可批量替换本文件所在文件夹下所有文件(文件夹)名。
echo.
set /p str1= 请输入要替换的文件(文件夹)名字符串(可替换空格):
set /p str2= 请输入替换后的文件(文件夹)名字符串(去除则直接回车):
echo.
echo 正在替换文件(文件夹)名……
for /f "delims=" %%a in ('dir /s /b ^|sort /+65535') do (
if "%%~nxa" neq "%~nx0" (
set "file=%%a"
set "name=%%~na"
set "extension=%%~xa"
call set "name=%%name:%str1%=%str2%%%"
setlocal enabledelayedexpansion
ren "!file!" "!name!!extension!" 2>nul
endlocal
)
)
echo 完成
pause

 

http://www.bathome.net/viewthread.php?tid=34943&page=1

posted @ 2022-08-18 17:19  ingemar,fang  阅读(696)  评论(0编辑  收藏  举报