📌  相关文章
📜  linux 给所有文件一个扩展名 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:02:44.813000             🧑  作者: Mango

在Linux中给所有文件添加扩展名 - Shell / Bash

如果你有一个目录中包含很多没有扩展名的文件,那么你可以使用以下几行Bash命令为它们添加扩展名:

for f in *; do mv "$f" "$f.txt"; done

这个命令将为当前目录中的所有文件添加.txt扩展名。当然,你也可以替换扩展名为任何你想要的。

解释

让我们逐行解释上面的命令:

  1. for f in *; do: 这是一个Bash循环,它将迭代当前目录中的所有文件。
  2. mv "$f" "$f.txt";:这个命令使用mv命令将每个文件重命名为原文件名加上.txt扩展名。
  3. done:该循环的结束。
替换扩展名

如果你想要替换不同的扩展名,只需要将上面命令的.txt替换为任何你想要的扩展名即可。

例如,如果你想要将所有文件后缀更改为.html,则可以使用以下命令:

for f in *; do mv "$f" "$f.html"; done

同样,你也可以将其替换为任何你想要的扩展名。

仅对特定类型的文件更改扩展名

如果你只想要更改特定类型的文件的扩展名,例如仅更改.txt文件的扩展名为.md,你可以使用以下命令:

for f in *.txt; do mv "$f" "${f%.txt}.md"; done

让我们来逐行解释一下:

  1. for f in *.txt; do:这个循环将只迭代当前目录中所有.txt文件。
  2. mv "$f" "${f%.txt}.md":这个命令将使用mv命令将原.txt文件名替换为.md文件名。
  3. done:该循环的结束。
结论

添加或更改文件扩展名在Shell / Bash中非常简单。使用上面的命令,你可以快速地为许多文件添加或更改扩展名。记住,备份你的文件,并仔细阅读每个命令的文档,以便你理解它们的作用。