Как пакетно изменить расширение файла
У меня есть куча mp3-файлов, расширение которых я хотел бы изменить на m4bs в терминале для аудиокниг. Я хочу преобразовать/изменить название каждого отдельного mp3-файла. Я почти уверен, что могу просто изменить расширение файла, и все будет работать. Я поискал в Интернете и нашел несколько способов сделать это, но я не слишком хорошо понимаю эти шаги. Итак, я попробовал в терминале в Ubuntu:
for i in *.mp3; do mv -- "$i" "ren-$i.m4b"; done
но это просто добавило .m4b в конец каждого файла .mp3.
Я также попробовал:
for file in /path/to; do mv $file $(basename -s mp3 $file)m4b ; done,
но я не могу заставить его работать, потому что я не уверен, что это за путь. Если я нахожусь в самой папке, где находятся mp3-файлы, к чему должен относиться «/path/to»? Я продолжаю получать сообщение об ошибке «mv: невозможно stat '/mybook': нет такого файла или каталога»
Также я попытался преобразовать их с помощью ffmpeg с помощью:
ls | grep "mp3" | awk '{printf "file |%s|\n", $0}' | sed -e "s/|/\'/g" > list.txt \
&& ffmpeg -f concat -safe 0 -i list.txt -c copy output.mp3 \
&& ffmpeg -i output.mp3 output.m4a \
&& mv output.m4a output.m4b
но я просто объединил все mp3-файлы в один файл и преобразовал его в m4b, где я хотел бы преобразовать все файлы в папке по отдельности в m4b.
Есть ли простая команда или сценарий, который я могу использовать?
Если я нахожусь в текущей папке в терминале? Спасибо