более короткое и более простое sed решение:
sed '
: again
/\\$/ {
N
s/\\\n//
t again
}
' textfile
или острота при использовании GNU sed
:
sed ':x; /\\$/ { N; s/\\\n//; tx }' textfile
Это не отвечает на вопрос в Вашем заголовке, но возможно существует шанс зафиксировать файлы без перекодирования. Например, одна распространенная проблема с неправильными длинами файлов MP3 файлы с переменной скоростью передачи, которые правильно не отмечены как наличие переменной скорости передачи (и программы как rhythmbox обработка их, как будто у них был постоянный). Инструмент vbrfix может зафиксировать те файлы. Другой полезный инструмент для проверки файла MP3 является mp3check, он также имеет опции как --fix-headers
это могло бы восстановить файлы (сделайте резервные копии файлов сначала!).
В то время как я не знаю конкретно, были ли дополнительные опции необходимы для устранения проблемы, которую Вы упоминаете, ffmpeg
полное, межплатформенное решение записать, преобразуйте и потоковое аудио и видео.
Это - швейцарский нож для аудио и видео. Перекодирование Ваших файлов должно быть столь же легким как
$ ffmpeg -i oldfile.mp3 newfile.mp3
ffmpeg
находится в репозиториях большинства основных дистрибутивов, или это может быть загружено с их веб-сайта.
Invalid data found when processing input
....
– Wilf
29.06.2015, 03:47
Возможно сделать это с lame
и перенесите теги id3 (нашел его здесь).
find . -type f -iname "*.mp3" | while read file
do
mv "$file" "${file}.old" && \
lame --mp3input -q 0 -b 192 --resample 44.1 "${file}.old" "$file" && \
id3cp "${file}.old" "$file"
done
См. больше сценариев преобразования, которые я записал здесь: https://github.com/sid-the-sloth/conversion-scripts
dpkg-source -x vbrfix_0.24-7.dsc
для извлечения его примените патчи и т.д., затем./configure --prefix='/home/wilf/Downloads/fsbOPEN/vbrfix/makeinstall'
,make
иmake install
произвести автономное легковозбудимое, которое я мог использовать на своих файлах. Я должен был проанализировать-always
опция заставить его работать. – Wilf 29.06.2015, 04:02