Я загрузил несколько файлов из https://www.grc.com/securitynow.htm, который является подкастом. Я загрузил 2 файла на подкаст.Bash переименовать файл на основе строки, напечатанной из другого файла
Файл 1 называется зп-471.mp3 (у меня есть 471 из них по имени последовательно) Файл 2 называется зп-471.txt (у меня есть 471 из них по имени последовательно)
То, что я пытаюсь сделать это, я печать 6-й строки файла, и резок от 2 разделителя до конца строки с этим:
sed -n 6p sn-471.txt | cut -f2-
это работает совершенно прямо сейчас. Причина для 6-й линии до сих пор в моем тесте, 6-я строка - это всегда TITLE: а затем вкладка, а затем название эпизода. Я предполагаю, что если я столкнулся с проблемой, когда 6-я строка не всегда является заголовком, тогда я могу grep для TITLE: затем используйте один и тот же разрез.
С вышеуказанным я могу напечатать заголовок эпизода. То, что я пытаюсь сделать и не могу склонить голову, - использовать эти данные, чтобы потом переименовать mp3-файл.
До сих пор я придумал это, но он не работает.
#/bin/bash
for i in
sn-471.txt;
do
X=$(sed -n 6p $i | cut -f2-)
mv $i `${X}`.txt
done
Я понимаю, что мне нужно будет сделать «зп-471.txt» часть что-то вроде «зп -. * .txt» в ближайшее время, но для этого теста это то, что я использую. Если это уже было рассмотрено, я не смог найти его до сих пор через различные поисковые запросы Google.
Благодарим вас за любую помощь, которую вы предоставляете!
Удивительно, это уже немного лучше, чем я был выше. Новая проблема, ее добавление? В начало и конец имени файла. Любая идея почему? Пример, название 471: ** PGP: время для обновления? ** Имя созданного мной файла: **? PGP: Время для обновления. Mp3 ** Спасибо очень за вашу помощь! – MaSammich
@MaSammich: проверьте под 'xxd', что'? 'Совпадает с'? '. Это похоже на проблему с кодировкой. – choroba