我有一个目录,其中一些文件的扩展名是大写(.JPG)而不是小写。
我想确保每个文件的扩展名都是 .jpg。我该如何在 shell 提示符下执行此操作?
答案1
答案2
如果您可以使用外部工具(不仅仅是 bash),请检查rename
命令!
rename .JPG .jpg *
是rename
的一部分util-linux
。
答案3
如果文件名中有空格:
for f in *.JPG; do [[ -f "${f}" ]] && mv "${f}" "${f/%JPG/jpg}"; done
答案4
如果文件名中没有空格:
for f in *.JPG; do mv $f `echo $f | sed 's/JPG$/jpg/'`; done