如何在Linux中重命名文件?

使用 mv 命令:格式为 mv 原文件名 新文件名,适用于重命名单个文件/目录,批量重命名可使用 rename 命令或脚本。

🔧 一、基础方法:mv 命令(单文件/目录重命名)

mv(move)是 Linux 最基础的重命名工具,语法如下:

如何在Linux中重命名文件?

mv [选项] 旧名称 新名称

常用场景

  1. 重命名文件
    mv old_file.txt new_file.txt
  2. 重命名目录
    mv old_directory/ new_directory/
  3. 覆盖前确认(避免误操作)
    mv -i old_name.txt new_name.txt  # 若新文件存在,提示确认
  4. 强制覆盖(慎用)
    mv -f old_name.txt new_name.txt  # 不提示直接覆盖

⚠️ 注意

  • mv 本质是移动文件,通过路径不变仅改名实现重命名。
  • 跨设备重命名可能触发复制删除操作(如 ext4 到 NTFS 分区)。

🔄 二、批量重命名:rename 命令(高级模式匹配)

rename 使用 Perl 正则表达式批量修改文件名,适合复杂任务。
语法

rename 's/原模式/新模式/' 文件匹配模式

实用案例

  1. 批量替换后缀.jpg.png
    rename 's/.jpg$/.png/' *.jpg
  2. 删除文件名中的空格
    rename 's/ //g' *.txt  # 将所有 .txt 文件名中的空格删除
  3. 添加前缀
    rename 's/^/prefix_/' *.log  # 所有 .log 文件添加 prefix_
  4. 大小写转换
    rename 'y/A-Z/a-z/' *  # 当前目录所有文件转为小写

💡 提示

如何在Linux中重命名文件?

  • 不同 Linux 发行版 rename 可能不同(Perl 版或 util-linux 版),推荐使用 Perl 版(安装命令:sudo apt install rename)。
  • 测试效果后再执行:添加 -n 参数(如 rename -n 's/old/new/' *)预览更改。

📦 三、其他批量重命名方法

mmv 命令(通配符批量操作)

安装:

sudo apt install mmv  # Debian/Ubuntu
sudo yum install mmv  # RHEL/CentOS

示例

mmv "*.old" "#1.new"    # 将后缀 .old 改为 .new
mmv "img_*" "photo_#1" # img_001.jpg → photo_001.jpg

for 循环结合 mv

灵活处理复杂逻辑:

for file in *.txt; do
    mv "$file" "${file%.txt}.md"  # .txt → .md
done

解释

  • ${file%.txt}:移除 .txt 后缀。
  • 支持嵌套处理:${file// /_} 替换空格为下划线。

🖥️ 四、图形界面方法(适合桌面用户)

  1. 文件管理器(如 Nautilus、Dolphin):
    • 右键文件 → 重命名(快捷键 F2)。
    • 批量选择文件 → F2 → 使用模板(如 “Image-###.png”)。
  2. 专用工具
    • Thunar Bulk Rename:支持正则、编号等高级功能。
    • KRename:KDE 环境下的全能批量重命名工具。

⚠️ 五、关键注意事项

  1. 权限问题
    • 无写权限时报错:Permission denied → 使用 sudochmod 修改权限。
  2. 特殊字符处理
    • 文件名含空格或特殊符号(如 , )时,用引号包裹:mv "file name.txt" new_name.txt
  3. 覆盖风险
    • 目标文件名存在时,mv 会静默覆盖 → 建议始终用 mv -ialias mv='mv -i' 添加到 ~/.bashrc
  4. 脚本安全
    • 批量操作前备份数据:cp -R original/ backup/

✅ 六、方法总结

场景 推荐工具 优势
单文件/目录重命名 mv 简单直接,系统内置
复杂正则批量重命名 rename (Perl) 强大灵活,支持模式匹配
通配符批量操作 mmv 语法简洁,适合基础批量任务
桌面环境操作 文件管理器 可视化操作,零学习成本

警告:操作前务必确认路径和命名规则,避免不可逆的数据丢失。

如何在Linux中重命名文件?


引用说明

  • Linux mv 命令文档:GNU Coreutils 官方手册
  • Perl rename 使用指南:Perl 社区教程 (perldoc.perl.org)
  • 文件管理器功能参考:GNOME、KDE 官方文档
  • 安全操作建议:Linux 基金会最佳实践指南

通过掌握上述方法,您将能高效安全地管理 Linux 系统中的文件命名需求,建议新手先在测试目录练习,熟练后再操作重要数据。

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/13069.html

(0)
酷盾叔酷盾叔
上一篇 2025年6月6日 19:16
下一篇 2025年6月6日 19:25

相关推荐

  • Linux如何查看流量

    Linux查看网络流量常用命令:ifconfig、ip可查看实时流量;nload、iftop提供动态监控界面;netstat、ss显示连接统计;sar、vnstat支持历史流量分析。

    2025年6月2日
    300
  • Linux如何查看端口信息?

    Linux查看端口信息常用命令:netstat -tuln(传统工具)或ss -ltn(更高效替代),显示所有监听端口,lsof -i :端口号可查具体端口占用进程。

    2025年5月31日
    500
  • Linux启动WebSphere的正确方法?

    在Linux下启动WebSphere,进入安装目录的bin文件夹(如/opt/IBM/WebSphere/AppServer/bin),执行命令./startServer.sh server1(将server1替换为你的实际服务器名)。

    2025年6月1日
    200
  • 如何在Linux命令行中快速查看主板详细信息

    在Linux系统中,可通过以下命令查看主板信息:使用sudo dmidecode -t baseboard查看型号与厂商;lshw -C system获取硬件摘要;lspci显示主板连接的PCI设备,需root权限或配合sudo执行,部分工具需提前安装。

    2025年5月28日
    600
  • Linux用户如何快速修改用户名

    修改Linux用户名需使用usermod命令:先用usermod -l 新用户名 旧用户名更改登录名,再用usermod -d /home/新用户名 -m 新用户名更新主目录路径,最后用groupmod -n 新组名 旧组名同步用户组名(如需),操作前务必备份数据,避免系统异常。

    2025年6月6日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN