插件窝 干货文章 linux怎么修改文件名

linux怎么修改文件名

文件名 文件 txt bash 598    来源:    2025-04-16

在 Linux 系统中,修改文件名主要通过 mv(move)命令实现。以下是详细方法和注意事项:


1. 基本语法

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

示例:修改当前目录下的文件

mv oldname.txt newname.txt

2. 常见场景

2.1 修改文件扩展名

mv document.doc document.pdf

2.2 移动并重命名文件(跨目录)

mv /home/user/oldfile.txt /tmp/newfile.txt

2.3 批量修改文件名

使用循环或 rename 工具(需安装):

# 批量将 .txt 改为 .md
rename 's/\.txt$/.md/' *.txt

# 或用 for 循环
for file in *.txt; do mv "$file" "${file%.txt}.md"; done

3. 关键选项

选项 作用
-i 交互模式(覆盖前提示确认)
-n 禁止覆盖已存在文件
-v 显示操作详情

示例:避免覆盖文件

mv -i oldname.txt newname.txt

4. 注意事项

  1. 权限问题:需对所在目录有写权限。
  2. 隐藏文件:以点开头的文件需明确指定,如 mv .hidden .newhidden
  3. 覆盖风险:若目标文件名已存在,mv 会直接覆盖(建议用 -i 选项)。

5. 替代工具

  • rename:支持正则表达式批量重命名(语法因发行版不同):

    # Debian/Ubuntu
    rename 's/pattern/replacement/' *.files
    
    # RHEL/CentOS
    rename pattern replacement *.files
    
  • 图形界面:直接右键文件选择“重命名”。


6. 验证结果

ls -l 新文件名

通过以上方法,你可以灵活修改 Linux 中的文件名。如需处理复杂批量操作,建议结合 Shell 脚本或 rename 工具。