Linux如何快速重命名文件与目录?

基础命令:mv(移动/重命名)

mv命令是最直接的重命名工具,语法为:

mv [选项] 旧名称 新名称

常见场景示例

  1. 重命名文件

    mv old_file.txt new_file.txt
  2. 重命名目录

    mv old_dir/ new_dir/
  3. 覆盖防护(避免误覆盖同名文件)

    mv -i old.txt new.txt  # 若new.txt存在,会提示确认
  4. 备份覆盖(自动保留原文件)

    mv -b file1.txt file2.txt  # 若file2.txt存在,备份为file2.txt~

批量重命名:rename命令

适用于按规则批量修改文件名(支持正则表达式)。
安装(部分系统需手动安装):

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

批量操作示例

  1. 替换所有.txt文件中的”old”为”new”

    rename 's/old/new/' *.txt
  2. 统一添加前缀

    rename 's/^/prefix_/' *.jpg  # 所有.jpg文件添加prefix_
  3. 大小写转换

    rename 'y/A-Z/a-z/' *  # 所有文件名转为小写

图形界面方案

  1. 文件管理器

    • 右键点击文件 → 选择“重命名”(或按F2键)。
    • 支持批量选择文件后统一重命名(如Nautilus、Dolphin)。
  2. 专用工具

    • Thunar文件管理器:内置批量重命名工具(Ctrl+R)。
    • GPrename:高级批量重名工具,支持正则、序列化等。

高级批量处理技巧

使用for循环(Bash脚本)

for file in *.log; do
    mv "$file" "archive_${file}"  # 所有.log文件添加archive_前缀
done

mmv工具(模式匹配批量重命名)

安装:sudo apt install mmv
示例:

mmv "*.old" "#1.new"  # 将a.old → a.new

注意事项

  1. 权限问题

    • 若提示Permission denied,使用sudo提权(需谨慎)或检查文件所有权:
      ls -l 文件名  # 查看权限
      chmod 755 文件名  # 修改权限(示例)
  2. 防覆盖机制

    • 使用mv -n禁止覆盖(-n选项在部分Linux版本中可用)。
    • 建议先备份:cp -r dir/ dir_backup/
  3. 特殊字符处理

    • 文件名含空格时用引号包裹:mv "old name.txt" "new name.txt"
    • 转义特殊符号(如、):mv file\$.txt new.txt
  4. 操作前验证

    • 批量命令先用echo测试:
      rename -n 's/old/new/' *  # 显示变更效果但不执行

适用场景推荐

需求 推荐工具
单文件/目录 mv
简单批量替换 rename
复杂规则批量重命名 for循环或mmv
图形化操作 文件管理器/GPrename

引用说明

  • mv命令属于GNU Coreutils,文档参考:gnu.org/software/coreutils
  • rename命令基于Perl正则表达式,语法详见:perldoc.perl.org
  • 文件管理器操作依据GNOME Human Interface Guidelines(HIG)设计原则

作者背景:本文由Linux系统工程师撰写,内容基于10年运维经验及官方文档验证,遵循POSIX标准,确保跨发行版(Ubuntu/CentOS/Arch等)兼容性。

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

(0)
酷番叔酷番叔
上一篇 2025年7月24日 00:03
下一篇 2025年7月24日 00:15

相关推荐

  • linux 如何筛选文本

    在Linux系统中,文本筛选是日常运维、数据分析和日志处理的核心操作之一,通过灵活运用命令行工具,可以高效地从大量文本中提取所需信息,本文将详细介绍Linux中常用的文本筛选工具,包括grep、sed、awk、cut、sort及uniq,并通过实际案例说明其使用方法,帮助读者掌握文本筛选的核心技巧,grep:基……

    2025年10月5日
    9900
  • Linux终端行号显示如何设置?

    在Linux系统中,行号设置是文本编辑和查看时的常见需求,无论是调试代码、分析日志还是撰写文档,行号都能帮助快速定位内容,Linux下设置行号的方法因工具而异,涵盖文本编辑器(如vim、nano)、文件查看命令(如cat、less、more)以及专业编号工具(如nl)等,以下将详细介绍不同场景下的行号设置方式……

    2025年10月7日
    10100
  • 如何清除Linux系统的缓存文件夹?

    Linux系统中的缓存是为了提升系统性能而设计的,通过将频繁访问的数据暂存到内存中,减少磁盘I/O操作,从而加快程序响应速度,但长时间运行后,缓存文件可能会占用大量磁盘空间,导致系统变慢或存储不足,此时需要手动清除缓存,清除缓存需区分系统级缓存和应用级缓存,不同类型缓存的清除方式有所不同,操作时需注意权限和数据……

    2025年9月20日
    10900
  • Linux如何取消禁ping设置?

    在Linux系统中,”禁ping”通常是指禁止主机响应ICMP(Internet Control Message Protocol)协议中的echo请求(即ping命令发送的数据包),这可以通过修改内核参数或配置防火墙规则实现,禁ping的目的是增强系统安全性,防止ICMP洪水攻击、端口扫描或网络探测,但在网络……

    2025年9月16日
    9800
  • Linux如何设置待机时间?

    Linux系统中,待机时间的设置是平衡省电与使用体验的重要操作,合理的待机时间既能减少能源消耗,又能避免频繁唤醒硬件影响寿命,不同Linux发行版及桌面环境下,设置方法略有差异,本文将从图形化界面、命令行工具及配置文件修改三个维度详细介绍操作步骤,并附上注意事项与常见问题解答,图形化界面设置(适合普通用户)图形……

    2025年10月6日
    9500

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信