I have a directory with the files names as "a b c.jpg", "d e f 0.jpg", "g h i.jpg"
I need a script to have all the files ending with "0.jpg" to become "_0.jpg"
So, in the above example the second file should become "d e f_0.jpg"
I have a directory with the files names as "a b c.jpg", "d e f 0.jpg", "g h i.jpg"
I need a script to have all the files ending with "0.jpg" to become "_0.jpg"
So, in the above example the second file should become "d e f_0.jpg"
I think your question should read that you want files ending with " 0.jpg" to become "_0.jpg" (note the space in the first quotes). That makes sense with your example.
for i in *\ 0.jpg ; do
mv -- "$i" "${i/ 0.jpg/_0.jpg}"
done
That is, for every file matching the pattern "* 0.jpg", rename it replacing " 0.jpg" with "_0.jpg"
Edit: For added safety, consider using -n
(no-clobber) or -i
(interactive) as an option to mv(1)
.