0

我有一个文件名为“ab c.jpg”、“def 0.jpg”、“gh i.jpg”的目录

我需要一个脚本让所有以“ 0.jpg”结尾的文件变成“ _0.jpg”

所以,在上面的例子中,第二个文件应该变成“de f_0.jpg”

4

3 回答 3

5

我认为您的问题应该是您希望以“ 0.jpg”结尾的文件变为“_0.jpg”(注意第一个引号中的空格)。你的例子是有道理的。

for i in *\ 0.jpg ; do
    mv -- "$i" "${i/ 0.jpg/_0.jpg}"
done

也就是说,对于每个匹配模式“* 0.jpg”的文件,将其重命名为“0.jpg”替换为“_0.jpg”

编辑:为了增加安全性,考虑使用-n(no-clobber) 或-i(interactive) 作为mv(1).

于 2010-09-07T13:46:23.713 回答
1

rename工具可能是您需要的。

于 2010-09-07T13:27:17.383 回答
-3
ls -1 | grep .jpg | awk -F "." '{print $1 "_0." $2}'
于 2010-09-07T14:12:23.833 回答