可以使用如下的批处理代码:
@echo off
setlocal enabledelayedexpansion
for /d %%a in (*) do (
set "folder=%%a"
for %%b in ("%%a\*") do (
ren "%%~b" "!folder!_%%~nxb"
)
)
说明:
@echo off:关闭命令行窗口中的回显。
setlocal enabledelayedexpansion:开启延迟变量扩展,以便在循环中使用!符号。
for /d %%a in (*) do (...):遍历当前目录下的所有文件夹,对于每个文件夹执行括号中的命令。
set "folder=%%a":将当前文件夹的名字存储到变量folder中。
for %%b in ("%%a\*") do (...):遍历当前文件夹下的所有文件,对于每个文件执行括号中的命令。
ren "%%~b" "!folder!_%%~nxb":将文件重命名为文件夹名_文件名的形式。
注意:这段代码需要保存为批处理文件(.bat),并放置在需要批量重命名文件的目录中执行。在执行前请备份好目录中的文件,以免误操作导致数据丢失