windows 10 提供多种命令行重命名方法:一、cmd 中用 ren 命令基础重命名;二、powershell 中用 rename-item 精确控制;三、powershell 批量编号重命名;四、powershell 字符串替换;五、forfiles 按日期筛选重命名;六、powershell 调用 cmd 兼容操作。

如果您需要在 Windows 10 中通过命令行对文件进行重命名操作,系统原生支持多种命令行工具与语法,适用于不同复杂度的重命名需求。以下是解决此问题的步骤:
一、使用 ren 命令重命名单个或多个同类型文件
ren(rename)是 Windows 命令提示符中最基础的重命名命令,适用于简单替换文件名,但不支持通配符批量处理多文件编号,仅允许一对一或扩展名统一变更。
1、按 Win + R 键打开运行窗口,输入 cmd 并按 Enter 启动命令提示符。
2、使用 cd 命令切换至目标文件夹,例如:cd /d D:\Photos。
3、执行单文件重命名:ren “IMG_001.jpg” “Vacation_001.jpg”。
4、执行同扩展名批量重命名(需配合 for 循环):for %f in (*.jpg) do ren “%f” “photo_%f”。
5、注意:ren 命令不支持跨文件夹操作,且不能修改文件扩展名以外的部分(如将 .jpg 改为 .png 需用 copy + del 或 PowerShell)。
二、使用 PowerShell 的 Rename-Item 命令重命名单个文件
Rename-Item 是 PowerShell 中专用于重命名对象的 Cmdlet,语义清晰、支持路径参数和管道输入,适合脚本化调用及精确控制。
1、在目标文件夹空白处按住 Shift 键并右键,选择“在此处打开 PowerShell 窗口”。
2、执行基础重命名:Rename-Item -Path “D:\Report_old.docx” -NewName “Report_final.docx”。
3、使用相对路径时可省略 -Path:Rename-Item “data.txt” “archive.txt”。
4、注意:NewName 参数仅接受文件名(不含路径),若需移动同时重命名,请改用 Move-Item。
三、使用 PowerShell 实现带递增序号的批量重命名
该方法通过 ForEach-Object 和计数器变量实现严格顺序编号,可保留原始扩展名,并支持前缀自定义,适用于整理截图、日志等序列化文件。
1、在目标文件夹中启动 PowerShell(Shift + 右键 → 在此处打开 PowerShell 窗口)。
2、执行编号重命名(从 1 开始):Get-ChildItem *.png | ForEach-Object -Begin {$i=1} -Process {Rename-Item $_ -NewName ("Screen_$i$($_.Extension)"); $i++}。
3、执行编号重命名(三位补零):Get-ChildItem *.jpg | ForEach-Object -Begin {$i=1} -Process {Rename-Item $_ -NewName ("Img_{0:000}$($_.Extension)" -f $i++)}。
4、注意:执行前请确认当前目录下无同名文件,否则将触发覆盖警告或失败。
四、使用 PowerShell 批量替换文件名中的指定字符串
利用 PowerShell 的字符串替换能力(-replace 操作符),可在不依赖正则引擎的前提下快速完成关键词统一变更,适用于清理冗余前缀、修正拼写错误等场景。
1、启动 PowerShell 并定位到目标文件夹。
2、执行全局字符串替换(区分大小写):Get-ChildItem *.* | Where-Object {!$_.PSIsContainer} | ForEach-Object {Rename-Item $_ $_.Name.Replace("OLD_", "NEW_")}。
3、执行不区分大小写的替换:Get-ChildItem *.* | Where-Object {!$_.PSIsContainer} | ForEach-Object {Rename-Item $_ ($_.Name -ireplace "old", "new")}。
4、注意:-ireplace 是 PowerShell 特有运算符,cmd 中不可用;空格、括号等特殊字符需用引号包裹。
五、使用 forfiles 命令按日期筛选并重命名
forfiles 是 Windows 内置命令行工具,支持按最后修改日期、大小等属性筛选文件,并对匹配项执行 rename 操作,适合归档类任务。
1、以管理员身份运行命令提示符(部分系统策略下需权限)。
2、切换至目标目录:cd /d C:\Logs。
3、将 7 天前的所有 .log 文件重命名为带日期后缀:forfiles /d -7 /m *.log /c "cmd /c ren @file @fname_20260412@ext"。
4、将 30 天内修改过的 .txt 文件统一添加前缀 archive_:forfiles /d +30 /m *.txt /c "cmd /c ren @file archive_@file"。
5、注意:/d 参数中负值表示“N 天前”,正值表示“N 天内”;@fname 和 @ext 是 forfiles 内置变量,不可更改。
六、使用 PowerShell 调用 cmd 的 rename 命令实现兼容性操作
在某些受限环境(如组策略禁用 PowerShell 脚本执行策略)下,可通过 PowerShell 启动 cmd 子进程执行 ren 命令,兼顾兼容性与 PowerShell 的路径处理能力。
1、在 PowerShell 中切换至目标文件夹。
2、执行嵌套命令:cmd /c "ren *.pdf Document_*.pdf"(注意:此语法在部分 Windows 版本中存在限制)。
3、更可靠方式:PowerShell 构造完整 cmd 字符串并调用:& cmd /c "cd /d `"$PWD`" && ren `"report_v1.xlsx`" `"report_final.xlsx`""。
4、注意:PowerShell 中双引号内含引号需使用反引号转义,路径含空格必须用英文双引号包裹。










