:: 功能简介:批量重命名文件,这里主要批量替换文件名中的子字符串。 :: "@echo off" 的意思是关闭回显,不显示正在执行的批处理命令及执行的结果等。 ::@echo off :: 设置开启本地延迟扩展。 Setlocal Enabledelayedexpansion set "dirname=D:\My_Temp_Cache_Data" set "findstr=新建文件-" set "replacestr=Movie-" :: in后面的括号表示的是要遍历的内容,(*)就是当前文件夹下的所有内容。其中的 "%~n" 的作用是获取文件名; "%~x" 的作用是获取文件后缀名; "%~nx" 的作用是获取文件名及其后缀名。当启用变量延迟时,使用 !! 将变量名扩起来表示对变量值的引用。 for /r "%dirname%" %%a in (*) do ( set oldname=%%~na set nowname=!oldname:%findstr%=%replacestr%! ren "%%a" "!nowname!%%~xa" )