立即分享:

学习如何在 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 通过文件资源管理器视图选项卡(最快)

  1. 可选 档案总管 -> 点击 查看 标签。
  2. 确保 文件扩展名 在“显示/隐藏”组中。

在 Windows 10 中,在文件资源管理器中显示文件扩展名。

2.1.2 通过文件夹选项(替代方案)

  1. 在文件资源管理器中,单击 查看 -> 可选项 -> 更改文件夹和搜索选项。 或者,按 WIN + R,类型 control folders,然后按 输入.
  2. “文件夹选项” 对话框中,单击 查看 选项卡 -> 取消选中 隐藏已知文件类型的扩展名 ->点击 OK.

在 Windows 10 中,在文件夹选项中取消隐藏已知文件类型的文件扩展名。

2.2 在 Windows 11 中显示文件扩展名

2.2.1 通过“视图”>“显示”菜单(最快)

Windows 11 将文件扩展名切换按钮移到了“查看”菜单中。

  1. 可选 档案总管 ->点击 查看 -> 展示 -> 检查 文件扩展名.

在文件资源管理器中显示文件扩展名。

2.2.2 通过文件夹选项(替代方案)

Windows 11 中仍然提供“文件夹选项”对话框。

  1. 在文件资源管理器中,单击 菜单-> 可选项 -> 查看 标签。
  2. 取消选中 隐藏已知文件类型的扩展名 ->点击 OK.

在 Windows 控制面板中,在文件资源管理器选项中显示文件扩展名。

2.3 在 Mac 中显示文件扩展名

  1. 点击 发现者 -> 个人设置.
  2. 点击 先进的 标签页 -> 检查 显示所有文件扩展名.

在 Mac 系统中,请在 Finder 设置中显示文件扩展名。

3. 如何在 Windows 系统中更改文件扩展名

3.1 方法 1:文件资源管理器重命名

这是更改文件扩展名的最简单方法:

  1. 确保文件扩展名可见(参见 第2).
  2. 选择要更改扩展名的文件。
  3. 使用以下方法之一:
    • 媒体中心 F2
    • 单击文件名
    • 右键单击文件 -> 重命名
      重命名一个 PowerPoint 文件包含特殊字符
  4. 编辑点号后面的扩展名 -> 按 输入.在编辑框中更改文件扩展名。
  5. 点击 当 Windows 警告文件可能停止工作时:
    在 Windows 系统中尝试更改文件扩展名时出现的警告信息。

3.2 方法二:命令提示符

使用命令提示符更改文件扩展名,而无需更改文件资源管理器中的“显示扩展名”设置。

  1. 类型 cmd 在文件资源管理器的地址栏中输入命令,即可在当前文件夹中打开命令提示符。
  2. 跑:
    ren "oldname.oldext" "oldname.newext"

    计费示例: ren "test.jpeg" "test.jpg"

在Windows命令行中更改文件扩展名。

3.3 方法 3:命令提示符 — 批量更改

使用通配符模式批量更改当前文件夹中的文件扩展名。

  1. 导航到 tar获取文件夹;类型 cmd 在文件资源管理器的地址栏中。
  2. 跑:
    ren *.oldext *.newext

    计费示例: ren *.jpeg *.jpg — 全部更改 .jpeg 文件扩展名 .jpg 在当前文件夹中。

在 Windows 命令行中批量更改当前文件夹中所有文件的扩展名。

3.4 方法 4:命令提示符——递归批量更改

使用 for /R 从根目录开始,递归地循环更改当前文件夹及其所有子文件夹中的文件扩展名。

  1. 打开命令提示符并导航到根目录:
    cd C:\path\to\root
  2. 预览所有受影响的文件:
    dir /b /s *.oldext

    计费示例: dir /b /s *.jpeg

  3. 运行递归循环进行重命名:
    for /R %d in (.) do @rename "%d\*.oldext" *.newext

    计费示例: for /R %d in (.) do @rename "%d\*.jpeg" *.jpg

在 Windows 命令行中批量更改当前文件夹及其所有子文件夹中所有文件的扩展名(递归)。

3.5 方法 5:PowerShell

您也可以使用 PowerShell 的 Rename-Item 使用正则表达式执行更精确、更高级的替换的 cmdlet:

  1. 可选 PowerShell的 然后导航到 tar获取文件夹。
  2. 跑:
    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' }

在 Windows PowerShell 中批量更改当前文件夹及其所有子文件夹中所有文件的扩展名(递归)。

3.6 方法 6:PowerToys PowerRename

PowerRename 是一个基于 GUI 的工具,与 Microsoft PowerToys 捆绑在一起——无需命令行知识,支持正则表达式和子文件夹:

  1. 下载并安装 微软PowerToys 从Microsoft Store。
  2. 全选 tar在文件资源管理器中获取文件和子文件夹 -> 右键单击​​ -> 使用 PowerRename 重命名.
    在 Windows 文件资源管理器中,右键单击所有文件和子文件夹,然后选择“使用 PowerRename 重命名”。
  3. 在 PowerRename 窗口中,设置:
    • 寻找: oldext
    • 替换为: newext
    • 适用于: 仅限扩展

    请注意: 由于我们对以下情况应用了重命名: 仅限扩展旧扩展名和新扩展名都不应包含点号(.),也就是说,您应该使用 oldextnewext 而不是 .oldext.newext.

  4. 预览更改 改名 右侧面板的列。
  5. 如果一切正常,请点击 在断裂前, 应用更改。

在 PowerRename 窗口中重命名文件扩展名。

4. 如何在 Mac 上更改文件扩展名

4.1 方法 1:使用 Finder 重命名

在 Mac 上使用 Finder 更改文件扩展名的最快方法:

  1. 在 Finder 中,确保文件扩展名可见(参见 第2.3).
  2. 单击文件名选中它,然后再次单击或按 Enter 键。 回程 进入编辑模式。
  3. 更改点号后的扩展名 -> 按 回程.
  4. 点击 使用[新扩展名] 在确认对话框中:
    在 Mac 系统中尝试更改文件扩展名时出现的警告信息。

4.2 方法二:获取信息面板

“获取简介”面板避免了重复扩展名问题(例如, .html.txt)在使用 Finder 内联重命名方法时可能会发生这种情况。

  1. 右键单击(或 按Ctrl点击)文件 -> 获取信息.
  2. 展开 姓名及分机号 领域。
  3. 编辑扩展程序 -> 关闭面板。
    在Mac的“显示简介”面板中更改文件扩展名。
  4. 点击 使用[新扩展名] 在确认对话框中:
    在 Mac 系统中尝试更改文件扩展名时出现的警告信息。

 

4.3 方法 3:终端

使用 mv 终端中的命令还可以更改文件扩展名:

  1. 在 Finder 中,转到 应用 然后是文件夹。 实用工具 然后选择文件夹 终端应用程序:
    在Mac上打开终端。
  2. 跑:
    mv "/path/to/file.oldext" "/path/to/file.newext"

    计费示例: mv ~/Desktop/test.jpeg ~/Desktop/test.jpg

4.4 方法 4:终端(批量更换)

使用 shell 循环批量更改当前文件夹中的文件扩展名:

  1. 在 Finder 中,转到 应用 然后是文件夹。 实用工具 然后选择文件夹 终端应用程序:
    在Mac上打开终端。
  2. 导航到 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 递归地更改所有子文件夹中的文件扩展名。

  1. 在 Finder 中,转到 应用 然后是文件夹。 实用工具 然后选择文件夹 终端应用程序:
    在Mac上打开终端。
  2. 跑:
    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终端中更改单个文件扩展名的命令。

  1. 跑:
    mv "/path/to/file.oldext" "/path/to/file.newext"

    计费示例: mv test.jpeg test.jpg

在Linux终端中更改文件扩展名。

5.2 方法 2:终端(批量更换)

使用 rename 批量更改文件扩展名的命令。有两种版本。 rename Linux 系统上存在语法不同的版本。所以你需要运行 rename --version 识别你的:
在 Linux 系统中,使用 rename --version 命令可以识别你的 rename 命令版本。
然后根据下表使用相应的命令:

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:
在 Linux 系统中,使用 rename --version 命令可以识别你的 rename 命令版本。
然后根据下表使用相应的命令:

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。 反馈和建议 以改进这些故障排除资源。

立即分享: