У меня есть каталог, и некоторые расширения файлов находятся в верхнем регистре (.JPG) вместо строчных.
Я хочу убедиться, что каждый файл имеет расширение .jpg. Как бы я сделал это из командной строки?
У меня есть каталог, и некоторые расширения файлов находятся в верхнем регистре (.JPG) вместо строчных.
Я хочу убедиться, что каждый файл имеет расширение .jpg. Как бы я сделал это из командной строки?
Ответы:
Использование расширения параметров оболочки :
for f in *.JPG; do
mv "${f}" "${f%%.JPG}.jpg"
done
Эти "
символы будут заботиться о именах файлов , содержащих пробелы, так как фотографии часто.
/path/to/*.JPG
. Вы можете представить свой ответ, конечно :)
Если вы можете использовать внешние инструменты (не только bash), проверьте rename
команду!
rename .JPG .jpg *
Это rename
часть util-linux
.
perl
которая принимает разные аргументы, чтобы сделать то же самое.
если у вас нет пробелов в именах файлов:
for f in *.JPG; do mv $f `echo $f | sed 's/JPG$/jpg/'`; done
mv
.