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

发布于 2022-07-28 22:57:57

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

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

关注者
0
被浏览
11
1 个回答
  • 面试哥
    面试哥 2022-07-28
    为面试而生,有面试问题,就找面试哥。

    一个帮助你起步的例子。

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

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

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

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

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



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看