小编典典

通过使用 shell 脚本替换文件名中的特定模式来重命名多个文件

all

编写一个简单的脚本,它会自动重命名许多文件。例如,我们希望将文件 *001.jpg 重命名为用户定义的字符串 +
001.jpg(例如:MyVacation20110725_001.jpg) 此脚本的用途是让数码相机照片具有有意义的文件名。

我需要为此编写一个 shell 脚本。有人可以建议如何开始吗?


阅读 68

收藏
2022-07-04

共1个答案

小编典典

一个帮助你起步的例子。

for f in *.jpg; do mv "$f" "$(echo "$f" | sed s/IMG/VACATION/)"; done

在此示例中,我假设您的所有图像文件都包含该字符串IMG,并且您希望将其替换IMGVACATION.

shell 会自动评估*.jpg所有匹配的文件。

mv(文件的新名称)的第二个参数是sed替换IMGVACATION.

如果您的文件名包含空格,请注意"$f"符号。您需要双引号来保留空格。

2022-07-04