学习如何在 Windows、Mac 和 Linux 上更改文件扩展名,从简单的 GUI 方法到批量和递归命令行重命名。
1. 什么是文件扩展名?
1.1 定义和格式
文件扩展名是文件名末尾点号后面的后缀——例如, .docx in myfile.docx, .jpg in mypicture.jpg 或 .mp4 in myvideo.mp4操作系统会读取文件扩展名来确定哪个程序打开该文件。扩展名存储在文件名本身中,而不是文件内容内部。
1.2 文件扩展名在哪里可以找到
m 系统中的文件扩展名默认是隐藏的。ost 系统。一旦变得可见(见 第2),扩展名会出现在文件资源管理器(Windows)或 Finder(Mac)中文件名的末尾。您也可以在特定文件的扩展名下找到它。 物业 Windows 上的对话框或 获取信息 Mac 上的面板。
1.3 常见文件扩展名类型
- 文件:
.doc,.docx,.pdf,.txt,.html - 图片:
.jpg,.jpeg,.png,.bmp - 视频:
.mp4,.avi,.wmv - 音频:
.mp3,.wav
2. 重命名前显示文件扩展名(前提条件)
默认情况下,Windows 会隐藏已知文件类型的文件扩展名,并显示未知文件类型的文件扩展名;Mac 则会隐藏所有文件扩展名。由于基于图形用户界面的重命名方法需要先显示文件扩展名,因此请先完成本节内容,然后再继续执行第 3 节和第 4 节。
2.1 在 Windows 10 中显示文件扩展名
2.1.1 通过文件资源管理器视图选项卡(最快)
- 可选 档案总管 -> 点击 查看 标签。
- 确保 文件扩展名 在“显示/隐藏”组中。
2.1.2 通过文件夹选项(替代方案)
- 在文件资源管理器中,单击 查看 -> 可选项 -> 更改文件夹和搜索选项。 或者,按 WIN + R,类型
control folders,然后按 输入. - 在 “文件夹选项” 对话框中,单击 查看 选项卡 -> 取消选中 隐藏已知文件类型的扩展名 ->点击 OK.
2.2 在 Windows 11 中显示文件扩展名
2.2.1 通过“视图”>“显示”菜单(最快)
Windows 11 将文件扩展名切换按钮移到了“查看”菜单中。
- 可选 档案总管 ->点击 查看 -> 展示 -> 检查 文件扩展名.
2.2.2 通过文件夹选项(替代方案)
Windows 11 中仍然提供“文件夹选项”对话框。
- 在文件资源管理器中,单击 … 菜单-> 可选项 -> 查看 标签。
- 取消选中 隐藏已知文件类型的扩展名 ->点击 OK.
2.3 在 Mac 中显示文件扩展名
- 点击 发现者 -> 个人设置.
- 点击 先进的 标签页 -> 检查 显示所有文件扩展名.
3. 如何在 Windows 系统中更改文件扩展名
3.1 方法 1:文件资源管理器重命名
这是更改文件扩展名的最简单方法:
- 确保文件扩展名可见(参见 第2).
- 选择要更改扩展名的文件。
- 使用以下方法之一:
- 媒体中心 F2
- 单击文件名
- 右键单击文件 -> 重命名
- 编辑点号后面的扩展名 -> 按 输入.
- 点击 是 当 Windows 警告文件可能停止工作时:
3.2 方法二:命令提示符
使用命令提示符更改文件扩展名,而无需更改文件资源管理器中的“显示扩展名”设置。
- 类型
cmd在文件资源管理器的地址栏中输入命令,即可在当前文件夹中打开命令提示符。 - 跑:
ren "oldname.oldext" "oldname.newext"计费示例:
ren "test.jpeg" "test.jpg"
3.3 方法 3:命令提示符 — 批量更改
使用通配符模式批量更改当前文件夹中的文件扩展名。
- 导航到 tar获取文件夹;类型
cmd在文件资源管理器的地址栏中。 - 跑:
ren *.oldext *.newext计费示例:
ren *.jpeg *.jpg— 全部更改.jpeg文件扩展名.jpg在当前文件夹中。
3.4 方法 4:命令提示符——递归批量更改
使用 for /R 从根目录开始,递归地循环更改当前文件夹及其所有子文件夹中的文件扩展名。
- 打开命令提示符并导航到根目录:
cd C:\path\to\root - 预览所有受影响的文件:
dir /b /s *.oldext计费示例:
dir /b /s *.jpeg - 运行递归循环进行重命名:
for /R %d in (.) do @rename "%d\*.oldext" *.newext计费示例:
for /R %d in (.) do @rename "%d\*.jpeg" *.jpg
3.5 方法 5:PowerShell
您也可以使用 PowerShell 的 Rename-Item 使用正则表达式执行更精确、更高级的替换的 cmdlet:
- 可选 PowerShell的 然后导航到 tar获取文件夹。
- 跑:
Get-ChildItem "*.oldext" | Rename-Item -NewName { $_.Name -replace '\.oldext$', '.newext' }计费示例:
Get-ChildItem "*.jpeg" | Rename-Item -NewName { $_.Name -replace '\.jpeg$', '.jpg' }
请注意: -replace 接受正则表达式,因此需要转义点号(\.)并将锚点固定在字符串末尾($)以避免意外匹配。
要在当前文件夹及其所有子文件夹中递归重命名,请添加 -Recurse 旗:
Get-ChildItem -Path . -Filter "*.oldext" -Recurse | Rename-Item -NewName { $_.Name -replace '\.oldext$', '.newext' }
计费示例:
Get-ChildItem -Path . -Filter "*.jpeg" -Recurse | Rename-Item -NewName { $_.Name -replace '\.jpeg$', '.jpg' }
3.6 方法 6:PowerToys PowerRename
PowerRename 是一个基于 GUI 的工具,与 Microsoft PowerToys 捆绑在一起——无需命令行知识,支持正则表达式和子文件夹:
- 下载并安装 微软PowerToys 从Microsoft Store。
- 全选 tar在文件资源管理器中获取文件和子文件夹 -> 右键单击 -> 使用 PowerRename 重命名.
- 在 PowerRename 窗口中,设置:
- 寻找:
oldext - 替换为:
newext - 适用于: 仅限扩展
请注意: 由于我们对以下情况应用了重命名: 仅限扩展旧扩展名和新扩展名都不应包含点号(.),也就是说,您应该使用
oldext和newext而不是.oldext和.newext. - 寻找:
- 预览更改 改名 右侧面板的列。
- 如果一切正常,请点击 在断裂前, 应用更改。
4. 如何在 Mac 上更改文件扩展名
4.1 方法 1:使用 Finder 重命名
在 Mac 上使用 Finder 更改文件扩展名的最快方法:
- 在 Finder 中,确保文件扩展名可见(参见 第2.3).
- 单击文件名选中它,然后再次单击或按 Enter 键。 回程 进入编辑模式。
- 更改点号后的扩展名 -> 按 回程.
- 点击 使用[新扩展名] 在确认对话框中:
4.2 方法二:获取信息面板
“获取简介”面板避免了重复扩展名问题(例如, .html.txt)在使用 Finder 内联重命名方法时可能会发生这种情况。
- 右键单击(或 按Ctrl点击)文件 -> 获取信息.
- 展开 姓名及分机号 领域。
- 编辑扩展程序 -> 关闭面板。
- 点击 使用[新扩展名] 在确认对话框中:
4.3 方法 3:终端
使用 mv 终端中的命令还可以更改文件扩展名:
- 在 Finder 中,转到 应用 然后是文件夹。 实用工具 然后选择文件夹 终端应用程序:
- 跑:
mv "/path/to/file.oldext" "/path/to/file.newext"计费示例:
mv ~/Desktop/test.jpeg ~/Desktop/test.jpg
4.4 方法 4:终端(批量更换)
使用 shell 循环批量更改当前文件夹中的文件扩展名:
- 在 Finder 中,转到 应用 然后是文件夹。 实用工具 然后选择文件夹 终端应用程序:
- 导航到 tar获取文件夹,然后运行:
for f in *.oldext; do mv "$f" "${f%.oldext}.newext"; done计费示例:
for f in *.jpeg; do mv "$f" "${f%.jpeg}.jpg"; done
4.5 方法 5:终端(递归批量更改)
绝大部分储备使用 find 结合 mv 递归地更改所有子文件夹中的文件扩展名。
- 在 Finder 中,转到 应用 然后是文件夹。 实用工具 然后选择文件夹 终端应用程序:
- 跑:
find . -name "*.oldext" -exec bash -c 'mv "$1" "${1%.oldext}.newext"' _ {} \;计费示例:
find . -name "*.jpeg" -exec bash -c 'mv "$1" "${1%.jpeg}.jpg"' _ {} \;
5. 如何在Linux上更改文件扩展名
5.1 方法 1:终端
使用 mv Linux终端中更改单个文件扩展名的命令。
- 跑:
mv "/path/to/file.oldext" "/path/to/file.newext"计费示例:
mv test.jpeg test.jpg
5.2 方法 2:终端(批量更换)
使用 rename 批量更改文件扩展名的命令。有两种版本。 rename Linux 系统上存在语法不同的版本。所以你需要运行 rename --version 识别你的:
然后根据下表使用相应的命令:
rename --version 产量 |
命令 | 样本 |
|---|---|---|
包含 util-linux |
rename .oldext .newext *.oldext |
rename .jpeg .jpg *.jpeg |
包含 File::Rename 或无版本信息 |
rename 's/\.oldext$/.newext/' *.oldext |
rename 's/\.jpeg$/.jpg/' *.jpeg |
5.3 方法 3:终端(递归批量更改)
绝大部分储备使用 find 结合 rename 递归地更改当前文件夹及其所有子文件夹中的文件扩展名。语法因情况而异。 rename 版本,所以你需要用……来检查。rename --version:
然后根据下表使用相应的命令:
rename --version 产量 |
命令 | 样本 |
|---|---|---|
包含 util-linux |
find . -name "*.oldext" -exec rename .oldext .newext {} \; |
find . -name "*.jpeg" -exec rename .jpeg .jpg {} \; |
包含 File::Rename 或无版本信息 |
find . -name "*.oldext" -exec rename 's/\.oldext$/.newext/' {} \; |
find . -name "*.jpeg" -exec rename 's/\.jpeg$/.jpg/' {} \; |
6。 常问问题
问:更改文件扩展名会改变文件格式本身吗?
答:不。文件扩展名只是一个标签。重命名文件扩展名不会改变文件的内部数据或格式。
问:为什么我重命名文件扩展名后文件类型没有改变?
答:因为文件扩展名是隐藏的,而你只是在原有的隐藏扩展名前面添加了一个新的扩展名。要解决这个问题, 显示文件扩展名 先重命名,然后再重命名一次。
问:为什么我的文件会变成 filename.html.txt 我重命名之后呢?
答:请参考上一题的答案。
问:如何解决“访问被拒绝/权限不足”错误?
答:当前用户帐户没有更改文件扩展名的权限。请继续操作或以管理员身份登录并重试。
问:如何在不显示所有文件扩展名的情况下更改文件扩展名?
答:在Windows系统中,使用命令提示符。 ren 该命令——它直接作用于文件名(包括扩展名),无需更改文件资源管理器的显示设置(参见)。 第3.2同样,在 Mac 上,使用终端。 mv 命令(见 第4.3).
问:如何在Mac上更改文件扩展名?
A:使用 Finder 重命名(第4.1),获取信息面板(第4.2),或终端 mv 命令(第4.3获取信息的方法避免了重复扩展名的问题。
问:如何在Windows系统中批量更改文件扩展名?
A:三个选项:命令提示符 ren *.old *.new (第3.3),PowerShell Rename-Item (第3.5), PowerToys PowerRename GUI(第3.6).
问:使用 CMD 进行批量重命名是否适用于子文件夹?
答:基本 ren 该命令仅在当前文件夹中有效。请使用 for /R 环形 (第3.4)或 PowerShell -Recurse (第3.5)以涵盖嵌套子文件夹。
7. 结论
对于单个文件, 文件资源管理器重命名 (Windows)或 Finder 重命名 (Mac)是最快的方法。要对文件夹内进行批量更改,请使用 ren *.old *.new 在 Windows 系统上,或在 Mac 和 Linux 系统上,使用 shell 循环。要跨子文件夹递归重命名,请使用 for /R 在 Windows 上使用循环或 PowerShell find + mv 在Mac上,以及 find + rename 在 Linux 系统上。如果您更喜欢使用图形用户界面进行批量操作, PowerToys PowerRename(Windows) 是很棒的。
关于作者
寿胜 是一位拥有超过 10 年 Word、Excel 和 Microsoft Office 实践经验的 Microsoft Office 专家。 PowerPoint 他擅长解决企业和教育环境中的各种问题,已帮助数千名用户恢复系统。ost 工作、解决文件损坏问题、优化 Office 工作流程。
寿先生致力于通过技术写作,将复杂的 Office 故障排除方法转化为清晰易懂、可操作的步骤,供各种技能水平的用户使用。他密切关注 Microsoft 365 的最新发展,并持续在实际文件损坏场景下测试各种方法,以确保其准确性。
对本指南有疑问或需要其他 Office 方面的帮助?欢迎随时联系 Shou。 反馈和建议 以改进这些故障排除资源。

















