Удалить расширение файла в OS X с помощью терминала
Проблема:
У меня есть более 200 файлов с именами в соответствии с DSC01852.JPG.jpg. Я хотел бы удалить расширение файла, чтобы результат стал "DSC01852.JPG".
Какие-либо предложения? Я посмотрел на команду mv, но не мог понять, как написать правильную команду.
1 ответ
Решение
Если все эти файлы находятся в одном каталоге, вы можете переименовать их следующим образом:
for f in /some/dir/*.JPG.jpg; do
mv "$f" "${f%.*}"
done
${f%.*}
удаляет самый короткий текст, соответствующий шаблону .*
(точка, за которой следует произвольный текст) от конца переменной $f
(в данном случае имя файла), таким образом производя команды, подобные следующим:
mv "/some/dir/DSC01852.JPG.jpg" "/some/dir/DSC01852.JPG"