如何使用 Linux 终端重命名文件和目录

Suraj Joshi 2023年1月30日
  1. 使用 mv 命令重命名文件和目录
  2. 使用 rename 命令重命名文件和目录
如何使用 Linux 终端重命名文件和目录

我们可以在 Linux 终端中使用 renamemv 命令重命名文件和目录。mv 命令一次只能重命名一个文件,但 rename 命令可以同时重命名多个文件。

使用 mv 命令重命名文件和目录

mv 命令可以重命名文件和目录。它也用于将文件和目录从一个位置移动到另一个位置。

mv 命令的语法

mv [OPTIONS] source destination

source 可以是一个或多个文件或目录,destination 总是一个文件或目录。

如果我们有多个文件或目录作为源文件,目标总是目录。在这种情况下,所有的源文件和目录都会被移动到目标目录中。

如果我们把一个文件作为源文件,把一个目录作为目标目录,源文件被移动到目标目录。

要使用 mv 重命名一个文件,mv 命令中的源参数和目标参数都必须是文件。

mv helloworld.py main.py

它将文件 helloworld.py 重命名为 main.py

我们也可以同样地重命名目录。

mv Programs Python-Programs

它将 Programs 目录重命名为 Python-Programs

mv 命令重命名多个文件

我们知道,mv 命令一次只能重命名一个文件。我们可以使用 forwhile 循环来重命名多个文件。

for f in *.png; do 
    mv -- "$f" "${f%.png}.jpg"
done

它将当前目录中所有扩展名为 .png 的文件重命名为 .jpg

使用 rename 命令重命名文件和目录

rename 命令比 mv 命令稍微高级一些,可以一步到位地重命名多个文件。

要在 UbuntuDebian 安装 Perl 版本的 rename 命令,请使用命令。

sudo apt install rename

要在 CentOSFedora 中安装 Perl 版本的 rename 命令,使用命令。

sudo yum install prename

要在 Arch Linux 中安装 Perl 版本的 rename 命令,请使用该命令。

yay perl-rename ## or yaourt -S perl-rename

rename 命令的语法

rename [options] 's/old/new/' files

示例:使用 rename 命令重命名文件

rename 's/.png/.jpg/' *.png

它将当前目录下的所有 .png 文件重命名为 .jpg

要打印重命名的文件名,我们使用 rename 命令中的 -v 选项。

rename -v 's/.jpg/.png/' *.jpg

输出:

1.jpg renamed as 1.png
bubbleheads.jpg renamed as bubbleheads.png
demo.jpg renamed as demo.png
hiss.jpg renamed as hiss.png
invoice.jpg renamed as invoice.png

它将当前目录下的所有 .jpg 文件重命名为 .png,并在终端打印每个重命名的文件。

示例:将文件名转换为小写

rename 'y/A-Z/a-z/' *

它将当前目录中所有大写字母的文件名转换为小写字母。

示例:将文件名转换为大写

rename 'y/a-z/A-Z/' *

它将当前目录中文件名的所有小写字母转换为大写字母。

作者: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

相关文章 - Linux Files and Directories