轻松搞定!Linux 批量修改多张图片文件名的方法分享 (linux 批量修改图片名称)
在日常生活和工作中,我们经常需要修改大量文件名。特别是在处理图片时,我们需要把一组图片的文件名按照特定规律重命名,这个时候,如果只手动一个一个地修改,那就太费时间了。那么有没有一种简单的方法可以批量修改多张图片文件名呢?答案是肯定的,下面就来介绍一种在 Linux 操作系统下的批量修改多张图片文件名的方法。
Linux 是一款非常强大的操作系统,常常被用作服务器端运行。其中,Linux 终端是管理员非常喜欢使用的一种工具。终端是命令行交互的方式,可以轻松地完成各种操作,不需要使用鼠标和图形化界面,速度十分迅速。Linux 终端中有一个非常好用的命令,叫做 mv 命令。它能够完成文件或目录的移动、重命名等操作。
下面就来介绍一下如何使用 mv 命令来批量修改多张图片文件名。假设我们有一组图片文件,它们的原始文件名都是随机的,比如:IMG_9832.jpg、IMG_9833.jpg、IMG_9834.jpg 等等。现在,我们要把这些图片的文件名改成按照时间顺序排列的文件名,比如:20230914_001.jpg、20230914_002.jpg、20230914_003.jpg 等等。那么,该怎样操作呢?下面,给出三种不同的方法。
方法一:使用 for 循环
在终端中进入存放图片的文件夹,输入以下命令:
for i in *.jpg; do echo “$i”; done
执行完毕后,会输出当前目录下所有 .jpg 后缀的文件名。这个命令是一个 for 循环,它会遍历当前目录下所有的 .jpg 文件,并将其命名为变量 i,然后输出该变量的值。
接着,我们需要对输出的变量 i 进行重命名,输入以下命令:
for i in *.jpg; do mv $i `date -r $i +”%Y%m%d”`_$(printf %03d ${i%.jpg})”.jpg”; done
执行完毕后,将会把每张图片的文件名修改成如下形式:20230914_001.jpg、20230914_002.jpg、20230914_003.jpg。
方法二:使用 basename 命令
假设,我们有一组 JPG 格式的图片,它们都是以 “image01.jpg”、”image02.jpg”、”image03.jpg” … “image50.jpg” 的形式命名的。现在,我们需要把它们的文件名分别改成 “even_01.jpg”、”even_02.jpg”、”even_03.jpg” … “even_50.jpg” 的形式。那么,该怎样操作呢?下面,给出使用 basename 命令的方法。
进入存放图片的文件夹,输入以下命令:
for i in *.jpg; do mv “$i” “`basename $i .jpg`.even.jpg”; done
执行完毕后,将会把每张图片的文件名修改成如下形式:even_01.jpg、even_02.jpg、even_03.jpg。
方法三:使用 rename 命令
rename 命令是一个强大的重命名工具,可以批量重命名指定后缀的文件。进入存放图片的文件夹,输入以下命令:
rename ‘s/\.JPG/.jpg/’ *.JPG
执行完毕后,将会把所有 .JPG 后缀的文件都改成 .jpg 后缀的文件。
通过上述三种不同的方法,我们可以轻松地批量修改多张图片文件名。每种方法在不同的情况下有不同的用途和优点,我们可以根据实际需求来选择不同的方法。同时,这些方法也可以应用在修改其他类型的文件名上。希望大家能够掌握这些技巧,让我们的操作更加便捷高效。