在Linux中对文件进行批量重命名文件的方法
在Linux中,当你想要改变一个文件名,使用mv命令就好了。然而mv不能使用通配符重命名多个文件。可以用sed、awk或者与xargs结合使用来处理多个文件的情况。然而,这些命令行即繁琐又不友好,并且如果不小心的话还很容易出错。你不会想要撤销1000个文件的错误名吧!
当你想要重命名多个文件的时候,rename 工具或许是最简单、最安全和最强大的命令行工具。这个rename命令实际上是一个Perl脚本,它预安装在所有的现在Linux发行版上。
下面是重命名命令的基本语法。
<pcre> 是Perl兼容正则表达式,它表示的是要重命名的文件和该怎么做。正则表达式的形式是‘s/old-name/new-name/’。
- ‘-v’选项会显示文件名改变的细节(比如:XXX重命名成YYY)。
- ‘-n’选项告诉rename命令在不实际改变名称的情况下显示文件将会重命名的情况。这个选项在你想要在不改变文件名的情况下模拟改变文件名的情况下很有用。
- ‘-f’选项强制覆盖存在的文件。
下面,就让我们看下rename命令的几个实际例子。
改变文件扩展名
假设你有许多.jpeg的图片文件。你想要把它们的名字改成.jpg。下面的命令就会将.jpeg 文件改成 *.jpg。
大写改成小写,反之亦然
有时你想要改变文件名的大小写,你可以使用下面的命令。
把所有的文件改成小写:
把所有的文件改成大写:
更改文件名模式
现在让我们考虑更复杂的包含子模式的正则表达式。在PCRE中,子模式包含在圆括号中,$符后接上数字(比如$1,$2)。
比如,下面的命令会将‘imgNNNN.jpeg’变成‘danNNNN.jpg’。
img_5418.jpeg renamed as dan_5418.jpg
img_5419.jpeg renamed as dan_5419.jpg
img_5420.jpeg renamed as dan_5420.jpg
img_5421.jpeg renamed as dan_5421.jpg
比如,下面的命令会将‘img_000NNNN.jpeg’变成‘dan_NNNN.jpg’。
img_0005418.jpeg renamed as dan_5418.jpg
img_0005419.jpeg renamed as dan_5419.jpg
img_0005420.jpeg renamed as dan_5420.jpg
img_0005421.jpeg renamed as dan_5421.jpg
上面的例子中,子模式‘\d{4}’会捕捉4个连续的数字,捕捉的四个数字就是$1, 将会用于新的文件名。
相关文章
Win7系统如何重命名多个文件?win7批量重命名文件的方法
Win7系统如何重命名多个文件?针对此问题,下面小编就给大家带来win7批量重命名文件的方法,希望可以帮助到大家2016-01-22- 我们用win8系统的用户都知道win8开始屏幕是个很华丽而且实用的菜单。那么Win8系统怎么把固定在开始屏幕上的图标重命名?下面小编就为大家介绍一个小技巧,一起来看看吧2015-11-04
- OneDrive是微软推出的云存储服务,集成在Win8/Win8.1之后的所有Windows系统上,想要重命名云端上的文件夹,该如何操作,下面有个教程,需要的朋友可以看看2015-05-05
- 无论是设置,还是文件夹的名称,包括本地磁盘的名称都是默认的,在Win10系统上,要重命名本地磁盘,可以按照下面的步骤进行操作2015-04-09
- 这篇文章主要介绍了Win8系统C盘分区无法重命名的解决方法,本文使用修改注册表方式解决这个问题,需要的朋友可以参考下2015-03-31
- 我的电脑硬盘名称显示的名称都不对,而且没办法修改,重启计算机还是这个状态,该怎么办呢?下面分享解决Win7下硬盘盘符不能正常显示重命名的方法,需要的朋友可以参考下2015-01-26
- 这篇文章主要介绍了Linux rename命令批量重命名的方法,需要的朋友可以参考下2014-11-02
- 有一批照片需要进行重命名?一张张操作太麻烦了有没有更简便的批量重命名方法,答案是有的,下面与大家分享下win7照片批量重命名的方法2014-09-26
- windows系统下给文件夹重命名相信很多朋友都很熟悉,那么Mac OS系统怎么给文件重命名呢,相信很多刚刚入手Mac OS系统的亲们都会有次疑问,下面小编告诉你Mac OS系统的文件2014-07-23
- Win10系统怎么同时重命名多个文件?很多朋友们可能还不知道方法,下面小编就给大家带来Win10系统同时重命名多个文件的方法,希望可以帮助到大家2016-02-23
最新评论