Linux 文件重命名方法详解 (2024版)
初次接触新事物时,即使是再基础的操作也可能让人感到困惑,这对于任何人来说都是正常的。例如,文件重命名是文件管理的基本操作之一,但对于Linux新手而言,在Linux系统中重命名单个或批量文件可能会遇到一些挑战。为了帮助大家克服这些难题,本文将详细介绍四种在Linux中重命名文件,甚至是批量重命名文件的方法,包括命令行界面(CLI)和图形用户界面(GUI)两种途径。
Linux 文件重命名策略
我们将首先介绍如何使用mv
和rename
命令在Linux命令行(或终端)中重命名文件。然后,我们将探讨如何使用GUI工具,包括GPRename和Linux发行版自带的文件管理器,进行文件重命名或批量重命名操作。
命令行方式重命名
虽然一开始使用命令行执行简单任务可能会让人望而生畏,但它功能强大,是Linux系统中快速重命名文件的高效方式。以下,我们将介绍mv
和rename
这两个命令,它们在任何Linux发行版中都可用。
使用 mv
命令重命名文件
mv
命令代表“移动”,其主要功能是在Linux文件系统中移动文件和目录。然而,我们也可以利用mv
命令来重命名文件。mv
命令的基本语法如下:
mv [选项] <源文件> <目标文件>
一些常用选项包括:
-b
:备份每个已存在的目标文件。-f
:强制执行命令,覆盖现有文件时不提示。-i
:在覆盖文件前进行提示。-u
:仅当源文件比目标文件新时才进行移动。-v
:显示当前操作的详细信息。
注意:如果多次使用-i
、-f
、-n
标志中的任何一个,则只有最后一个生效。
使用 mv
命令重命名单个文件
要使用mv
命令重命名单个文件,可以使用以下语法:
mv -v <旧文件名> <新文件名>
该命令执行后会输出确认信息,你可以使用ls
命令来验证更改。
重命名为“<old_file_name>” -> “<new_file_name>”
例如,我们使用mv
命令将文件 “mini-course-10.pdf” 重命名为 “test-1.pdf”。对应的命令如下:
mv -v mini-course-10.pdf test-1.pdf
之后,你可以通过mv
命令的输出(如上图所示)或使用ls
命令来进一步验证更改。你会在目录的文件列表中看到重命名的文件。
使用 mv
命令重命名多个文件
mv
命令还可以用于批量重命名目录中的多个文件,并进行一些修改。 结合其他命令可以实现更复杂的操作。例如:
for i in *.pdf; do
mv -v "$i" "${i/old_part/new_part}"
done
上述代码片段首先遍历当前目录下所有以.pdf为后缀的文件。然后,它会使用替换文本替换每个文件名的特定部分。最后,当所有文件都被重命名后,它会停止执行。
使用 rename
命令重命名文件
rename
命令通过简单直观的语法,解决了mv
命令的复杂性,适用于单个和多个文件的重命名操作。大多数发行版通常预装了rename
命令。如果没有,你可以使用以下命令进行安装:
- 基于Debian的系统:
sudo apt install rename
- 基于Fedora的系统:
sudo yum install prename
- 基于Arch的系统:
sudo pacman -S rename
在基于Debian的系统中,rename
命令的语法如下:
rename [选项] 's/<旧名称>/<新名称>/' <文件名>
由于rename
命令在后台使用Perl,所以有匹配、替换和翻译三种类型的正则表达式。rename
命令主要使用“替换”和“翻译”正则表达式。在上面的语法中,“s”用于指定你将使用替换表达式。
对于基于RedHat、Fedora的系统,你需要使用以下命令语法:
rename [选项] <旧名称> <新名称> <文件名>
rename
命令的一些常用选项包括:
-v
:显示当前操作的信息。-n
:表示“无操作”,用于测试操作后文件将如何受到影响。-f
:强制覆盖文件名。
重命名单个文件
在重命名单个文件时,rename
命令的工作方式类似于mv
命令。要重命名单个文件,可以使用以下语法:
rename -v 's/<原始名称>/<新名称>/' <文件名>
重命名多个文件
在重命名多个文件时,rename
命令相对于mv
命令的主要优势开始体现出来。它的语法更简单,使用起来更快捷,格式如下:
rename [选项] 's/<旧名称>/<新名称>/' <要重命名的文件>
上述语法与我们用于重命名单个文件的语法类似,只是在 <要重命名的文件> 部分,你可以使用通配符的通用模式来识别目录中的所有文件。
部分重命名文件
假设你所有文件名中都使用了空格,现在你想把这些空格替换为下划线。你可以使用rename
命令,并采用如下所示的语法将空格转换为下划线:
rename -v 'y/<原部分>/<替换部分>/' <要重命名的文件>
此处,将需要替换的部分放在 <原部分>
中,在<替换部分>
中写上要替换 <原部分>
的样式。 “y” 用于表示你正在使用“翻译”正则表达式。
对于上述情况,用下划线替换空格,可以使用以下命令:
rename -v 'y/ /_/' <要重命名的文件>
在这里,使用反斜杠 \ 用于将下划线视为字符而不是命令语法的一部分。
更改文件名的大小写
使用rename
命令,你甚至可以用相应的大写字符替换小写字符,反之亦然。要用大写字符替换小写字符,请使用以下语法:
rename 'y/az/AZ/' <要替换的文件>
要用小写字符替换大写字符,请使用以下语法:
rename 'y/AZ/az/' <要替换的文件>
图形界面方式重命名文件
对于那些觉得命令行令人生畏的用户来说,GUI方法可能是一个福音。在GUI方法中,我们使用Ubuntu 20.04 LTS中的Nautilus文件管理器和Pyrenamer,但请放心,这些方法适用于任何发行版,尽管在某些发行版中可能需要稍作修改。
使用文件管理器重命名文件
这是在Linux中重命名文件的最简单方法之一。每个Linux桌面发行版都预装了一个文件管理器,例如Nautilus、Dolphin、Thunar等。我们已经解释了如何使用这些文件管理器来重命名文件,所以请继续阅读。
重命名单个文件
1. 打开你选择的文件管理器,并导航到要重命名的文件。选择文件并右键单击它。
2. 从右键单击菜单中选择“重命名”选项。或者,在不使用鼠标的情况下,按键盘上的F2按钮重命名文件。
3. 然后,输入文件的新名称并单击“重命名”或按键盘上的Enter键。就是这样。
使用文件管理器重命名多个文件
1. 按住Shift键选择多个要重命名的文件,然后右键单击所选文件以打开上下文菜单。
2. 在此上下文菜单中,选择“重命名”选项。或者,你可以按键盘上的F2按钮访问重命名选项。
3. 这将打开一个新的重命名窗口,如下所示。在这里,你有两个重命名文件的选项,让我们一一学习如何使用它们。
使用模板重命名:
1. 在此选项中,你将看到一个文本框,默认值为[原始文件名]。在文本框中,输入将用于所有文件的通用名称。
2. 我们在这里使用“test_”作为通用文件名。接下来,单击通用名称旁边的“+添加”,然后选择要用作每个文件的唯一区分符的自动编号方案。
3. 然后,从“自动编号顺序”下拉菜单中选择文件的命名顺序。你可以选择升序、降序等。
4. 验证底部窗格中的更改,最后单击右上角的“重命名”。
查找和替换文本:
当你的文件名已包含通用名称,但你需要用新文本替换它时,你可以使用此选项。它的工作方式如下:
1. 在“现有文本”字段中输入当前的通用名称。在底部窗格中,你会看到常用名称突出显示。
2. 在“替换为”文本框中,输入要替换当前名称的新通用名称。
3. 验证底部窗格中的更改,并单击右上角的“重命名”以应用更改。
使用 GPRename 重命名文件
GPRename是一个轻量级的批量重命名工具,它带有几个不同的选项,这些选项在使用Linux GUI重命名文件时非常有用。对于那些发现难以使用本地文件管理器批量重命名文件的用户,这个工具可能会有所帮助。遗憾的是,它没有预装,但可以使用以下命令轻松安装:
- 对于基于Debian的系统:
sudo apt update && sudo apt install gprename
- 对于基于Fedora的系统:
sudo dnf install gprename
- 对于基于Arch的系统:
sudo pacman -S gprename
使用GPRename重命名单个文件
1. 从“应用程序”菜单打开GPRename或在Linux终端中键入gprename
。
2. 使用左侧的文件系统树导航到所需的文件夹。然后,在右窗格中选择要重命名的文件。
3. 在底部窗格中,选择你要执行的操作。例如,如果你想用另一个词替换文件名中的一个词,请转到“替换/删除”选项卡。接下来,在“替换”文本框中输入要替换的字符串,在“替换为”文本框中输入新字符串。
4. 使用右侧的“预览”按钮验证更改。满意后,单击其下方的“重命名”按钮。
使用 GPRename 重命名多个文件
1. 如上所述,使用左侧的文件系统树导航到所需的文件夹。然后,选择要重命名的文件,并从底部窗格中选择适当的选项。
2. 要验证更改,请单击右侧的“预览”按钮,最后单击其下方的“重命名”按钮。
常见问题解答
rm
命令在Linux中有什么作用?
尽管rm
命令看起来像是重命名的首字母缩写,但它代表删除(remove),用于删除Linux中的文件和文件夹。
在 Linux 中轻松重命名文件
对于初学者来说,理解Linux文件管理的细微之处非常重要,重命名文件是你可能会经常需要进行的操作。在本指南中,我们介绍了四种方法(两种CLI和两种GUI)来重命名目录中的单个和多个文件。虽然文件管理器可能是大多数Linux用户的首选,但上面解释的mv
和rename
命令也广泛用于通过终端重命名文件。你更喜欢哪种方法在Linux中重命名文件呢?请在评论区告诉我们。