插件窝 干货文章 linux如何改文件名

linux如何改文件名

命名 文件 txt bash 689    来源:    2025-05-14

在 Linux 系统中,修改文件名可以通过多种命令行工具实现。以下是常用的方法及详细说明:


1. mv 命令(最常用)

功能:移动或重命名文件/目录
语法

mv [选项] 原文件名 新文件名

示例

mv oldfile.txt newfile.txt      # 重命名文件
mv dir1 dir2                    # 重命名目录

选项: - -i:交互模式(覆盖前提示确认) - -v:显示操作详情

mv -i old.txt new.txt           # 若新文件存在会提示确认

2. rename 命令(批量重命名)

功能:基于正则表达式批量重命名
语法(Perl版本):

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

示例

rename 's/.txt/.log/' *.txt     # 将所有.txt后缀改为.log
rename 's/^/prefix_/' *.png     # 为所有.png文件添加前缀

注意
- 不同 Linux 发行版的 rename 可能不同(如 Ubuntu 默认是 Perl 版本,需通过 sudo apt install rename 安装)。


3. mmv 命令(高级批量重命名)

需先安装:

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

示例

mmv "*.old" "#1.new"  # 将.old后缀改为.new

4. 图形界面操作

  • 文件管理器(如 Nautilus、Dolphin)中直接右键文件 → 重命名

常见问题及解决

  1. 文件名含空格或特殊字符
    用引号包裹文件名:

    mv "old name.txt" "new name.txt"
    
  2. 覆盖已存在文件

    • 使用 -i 选项确认覆盖: bash mv -i old.txt existing.txt
    • 使用 -n 禁止覆盖: bash mv -n old.txt existing.txt # 若existing.txt存在,则不操作
  3. 递归重命名目录下所有文件
    结合 findmv

    find /path -type f -name "*.txt" -exec mv {} {}.bak \;
    

总结

场景 推荐命令
单个文件/目录重命名 mv
批量复杂重命名 rename (Perl)
简单批量重命名 mmv

根据需求选择合适的方法即可!