Linux 文件管理:Linux rename 命令(重命名目录和文件) 0 个改进

重命名文件可使用类似 mv 命令的一些等其它命令完成。但是 rename 命令相比其它具有更多优点。这个命令不很常用,因此,在不同的发行版中可能默认安装并不包含。本讲解运行在 Debian/Ubuntu 实例上。

一般来说,重命名文件不是什么大任务,但是,如果一次性对一大堆文件进行改名。若一个个都用 mv 命令去做,任务将变得枯燥、易错、非常困难。这种情况下建议使用 rename 命令。它最大的优势是可以使用 Perl 语言的正则表达式进行批量匹配修改。至于批量修改个大小写更是小菜一碟。

基本语法:

rename 's/old-name/new-name/' files  

其中 's/old-name/new-name/' 是 PCRE(Perl Compatible Regular Expression)-- Perl 兼容正则表达式 -- 的语法方式。

一个基本的 rename 命令的例子:Let's see an example of basic rename command:

在下面截图例子中,利用 rename 's/\.txt$/\.pdf$/' *.txt 命令将当前目录下所有后缀名为 .txt 的文件重命名以 .pdf 为后缀名的文件。

linux-file-rename-command

另一个例子,将所有后缀文件名为 .pdf 且文件名中包含 file 的文件重命名为:将 file 改为 document 的文件(后缀名 .pdf 不变)。

linux-file-rename-command


rename 命令选项:

rename 命令有些命令选项。但是命令中的 perl 正则表达式是必须的。

选项 功能
rename -n 模拟运行,实际命令没进行重命名。
rename -v 探测模式,输出每步信息。
rename -f 强制改写。

rename 命令 -n 选项

rename -n 命令将显示出命令执行下文件被重命名的状况,但是实际文件名并未被改。只是让你看到命令结果,验证你的命令是否符合你的期望,方便修改。(模拟运行)

见下图,它显示了我们的文件,哪些文件被改,被改成什么等信息。

Linux-file-rename-n

rename 命令 -v (verbose) 选项

使用 -n 选项是模拟运行,使用 -v 选项是实际运行时,显示每个文件被重命名的信息。

Linux file rename -v

上图中,所有以 .pdf 为后缀名的文件都被改成以 .txt 为后缀名的文件。

rename 命令 -f 选项

Linux file rename-f1

本文为 Wiki 文章,邀您参与纠错、纰漏和优化
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!