如何在 Linux 和 MacOS 终端中重命名文件

重命名文件是经常发生的事情,在 Linux on terminal 中,有很多方法可以重命名文件。让我们看看在 Linux 和其他基于 Unix 的系统(如 MacOS)上重命名文件的一些主要方法。

Linux 命令

如果您是 Linux 命令的新手,请在此处阅读我关于 Linux 命令的完整指南

使用 mv 命令重命名文件#

mv命令将文件移动到另一个位置。它还可以用于将文件移动到同一位置,并且只需更改其名称。例如,如果您想重命名一个名为file-1.txtto的文件file-2.txt,您将首先cd进入该目录,然后运行以下命令:

mv file-1.txt file-2.txt

从技术上讲,这会“移动”文件,但实际上最终结果是文件被重命名并位于同一位置。

重命名多个文件#

如果你想一次重命名多个文件,我们不能只使用mv命令。为此,我们需要遍历要重命名的每个文件。我们可以将它与find命令结合使用,以轻松找到符合我们标准的所有文件。例如,下面将查找所有 .txt、.csv 和 .html 文件,并将它们转换为 .js 文件:

for f in $(find . -name '*.txt' -or -name '*.csv' -or -name '*.html'); do 
    mv $f ${f%.*}.js
done

让我们更详细地看看它是如何工作的:

  • 我们运行一个for循环,for f in $(). 这将找到所有文件,它与里面的内容匹配$()。在此示例中,它会查找文件类型为.txt.csv.html的任何内容。您可以在此处了解有关查找的更多信息
  • 对于每个匹配的文件,我们运行mv命令。我们跑mv $f ${f%.*}.js
  • $f是我们正在循环的当前匹配文件。
  • ${f%.*}.html是说用任何扩展名重命名任何文件({f%.*}可以是{f%.html}{f%.csv}等),并将其名称更改为具有我们新扩展名的文件名,.js.

之后,您将成功移动所有文件。

发表评论

邮箱地址不会被公开。 必填项已用*标注