编写一个简单的脚本,它会自动重命名许多文件。例如,我们希望将文件 *001.jpg 重命名为用户定义的字符串 + 001.jpg(例如:MyVacation20110725_001.jpg) 此脚本的用途是让数码相机照片具有有意义的文件名。
我需要为此编写一个 shell 脚本。有人可以建议如何开始吗?
一个帮助你起步的例子。
for f in *.jpg; do mv "$f" "$(echo "$f" | sed s/IMG/VACATION/)"; done
在此示例中,我假设您的所有图像文件都包含该字符串IMG,并且您希望将其替换IMG为VACATION.
IMG
VACATION
shell 会自动评估*.jpg所有匹配的文件。
*.jpg
mv(文件的新名称)的第二个参数是sed替换IMG为VACATION.
mv
sed
如果您的文件名包含空格,请注意"$f"符号。您需要双引号来保留空格。
"$f"