当前位置:首页 > Linux > 正文

Linux怎么重命名文件?

Linux中更改文件名主要使用 mv命令,基本语法为: mv 旧文件名 新文件名,该命令也可用于移动文件位置或同时重命名多个文件。

基础方法:mv命令(最常用)

mv(move)命令用于移动或重命名文件/目录。

语法

mv [选项] 源文件 目标文件

重命名单个文件

mv old_filename.txt new_filename.txt

  • 示例:将report.docx改为final_report.docx mv report.docx final_report.docx

重命名并移动文件到其他目录

mv /home/user/docs/file.txt /home/user/archive/renamed_file.txt

覆盖保护(避免误操作)

  • 添加-i选项:若目标文件已存在,会提示确认 mv -i old.txt new.txt
  • 使用-n选项:禁止覆盖已存在文件 mv -n file.txt existing_folder/ # 若目标存在,放弃操作


批量重命名:rename命令

适用于按规则批量修改文件名(如统一修改后缀、替换关键词)。

安装(部分系统需手动安装):

# Debian/Ubuntu sudo apt install rename # CentOS/RHEL sudo yum install prename

基础语法

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

常见场景

  • 修改后缀名:将所有.jpeg改为.jpg rename 's/.jpeg$/.jpg/' *.jpeg
  • 替换文件名中的字符:将文件名中的space替换为_ rename 's/ /_/g' * # "g"表示全局替换
  • 添加前缀: rename 's/^/prefix_/' *.txt


图形界面操作(适合新手)

  1. 文件管理器(如Nautilus、Dolphin):

    Linux怎么重命名文件? 第1张

    • 右键点击文件 → 选择“重命名”(或按F2)。
    • 批量操作:选中多个文件 → 右键重命名 → 按规则修改(如添加序列号)。
  2. 跨平台工具

    • 使用Thunar(XFCE默认管理器)的批量重命名工具: thunar -B # 打开批量重命名界面
    • 高级技巧:递归重命名与find结合

      递归修改子目录中的文件

      find . -name "*.md" -exec rename 's/.md$/.markdown/' {} ;

      • 解释:查找当前目录(含子目录)所有.md文件,将其后缀改为.markdown。

      配合sed生成新文件名(复杂规则)

      find . -type f -name "*.log" | while read file; do new_name=$(echo "$file" | sed 's/error/debug/') mv "$file" "$new_name" done


      注意事项(避免数据损失)

      1. 备份重要文件

        执行批量操作前,建议备份:

        Linux怎么重命名文件? 第2张

        cp -r original_folder/ backup_folder/
      2. 测试命令效果
        • 使用echo预览mv操作: for f in *.txt; do echo mv "$f" "${f%.txt}.text"; done
        • rename命令添加-n选项(模拟运行): rename -n 's/old/new/' *.txt # 仅显示更改,不执行
      3. 避免特殊字符

        文件名含空格或特殊符号时,用引号包裹: mv "file with spaces.txt" new_name.txt

      4. 权限问题

        若提示Permission denied,使用sudo(需谨慎)或检查文件权限: ls -l filename # 查看权限 chmod u+w filename # 添加用户写入权限


      方法对比

      场景 推荐命令 优势
      单个文件重命名 mv 简单直接,无需安装
      按规则批量修改 rename 支持正则表达式,高效批量处理
      递归修改子目录文件 find + rename 灵活处理嵌套目录
      图形界面操作 文件管理器 适合新手,避免命令行误操作


      • 简单操作:优先使用mv命令。
      • 批量处理:掌握rename的正则表达式。
      • 安全第一:始终用-i或-n测试命令,并备份关键数据。

      引用说明

      • mv和rename命令参考GNU Coreutils官方文档(https://www.gnu.org/software/coreutils/)。
      • 文件权限管理部分依据Linux Man Page标准(man chmod)。
      • 安全建议基于Linux系统管理最佳实践(Red Hat Enterprise Linux文档)。

      Linux怎么重命名文件? 第3张

0