https://linuxoid.in/index.php?title=%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82_%D0%B4%D0%BB%D1%8F_%D1%80%D0%B5%D0%BA%D1%83%D1%80%D1%81%D0%B8%D0%B2%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BF%D0%B5%D1%80%D0%B5%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_lossless-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2_%D0%B2%D0%BE_FLAC&feed=atom&action=history
Скрипт для рекурсивного перекодирования lossless-файлов во FLAC - История изменений
2024-03-29T07:09:46Z
История изменений этой страницы в вики
MediaWiki 1.37.2
https://linuxoid.in/index.php?title=%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82_%D0%B4%D0%BB%D1%8F_%D1%80%D0%B5%D0%BA%D1%83%D1%80%D1%81%D0%B8%D0%B2%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BF%D0%B5%D1%80%D0%B5%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_lossless-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2_%D0%B2%D0%BE_FLAC&diff=2152&oldid=prev
Rain в 17:55, 28 мая 2013
2013-05-28T17:55:09Z
<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="ru">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Предыдущая</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Версия 17:55, 28 мая 2013</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l11">Строка 11:</td>
<td colspan="2" class="diff-lineno">Строка 11:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>:и, естественно, утилиты для работы с FLAC-форматом.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>:и, естественно, утилиты для работы с FLAC-форматом.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Для использования просто запустить команду внутри нужного каталога.</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Для использования просто запустить команду <ins style="font-weight: bold; text-decoration: none;"><!-- для индексации: any2flac --> </ins>внутри нужного каталога.</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Предупреждение:''' Для обработки не-FLAC-файлов, представляющих собой целый альбом в одном файле, лучше сразу воспользоваться [[Перекодирование одиночного lossless аудиофайла во FLAC по CUE-таблице|этим скриптом]].</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Предупреждение:''' Для обработки не-FLAC-файлов, представляющих собой целый альбом в одном файле, лучше сразу воспользоваться [[Перекодирование одиночного lossless аудиофайла во FLAC по CUE-таблице|этим скриптом]].</div></td></tr>
</table>
Rain
https://linuxoid.in/index.php?title=%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82_%D0%B4%D0%BB%D1%8F_%D1%80%D0%B5%D0%BA%D1%83%D1%80%D1%81%D0%B8%D0%B2%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BF%D0%B5%D1%80%D0%B5%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_lossless-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2_%D0%B2%D0%BE_FLAC&diff=2145&oldid=prev
Rain в 21:39, 17 марта 2013
2013-03-17T21:39:50Z
<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="ru">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Предыдущая</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Версия 21:39, 17 марта 2013</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l5">Строка 5:</td>
<td colspan="2" class="diff-lineno">Строка 5:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''mac''' из пакета '''monkeys-audio''' для поддержки формата '''APE'''</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''mac''' из пакета '''monkeys-audio''' для поддержки формата '''APE'''</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''alac''', который можно загрузить с http://crazney.net для поддержки формата '''Apple Lossless''' (файлы m4a)</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''alac''', который можно загрузить с http://crazney.net для поддержки формата '''Apple Lossless''' (файлы m4a)</div></td></tr>
<tr><td class="diff-marker" data-marker="−"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* ''wvunpack''' из пакета '''wavpack''' для декодирования '''WavPack'''-файлов</div></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* <ins style="font-weight: bold; text-decoration: none;">'</ins>''wvunpack''' из пакета '''wavpack''' для декодирования '''WavPack'''-файлов</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''mp4info''' из пакета '''mpeg4ip-utils''' для работы с тегами в '''ALAC'''-файлах</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''mp4info''' из пакета '''mpeg4ip-utils''' для работы с тегами в '''ALAC'''-файлах</div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''ffmpeg''' для работы с тегами в '''WavPack''' и '''APE'''</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* '''ffmpeg''' для работы с тегами в '''WavPack''' и '''APE'''</div></td></tr>
</table>
Rain
https://linuxoid.in/index.php?title=%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82_%D0%B4%D0%BB%D1%8F_%D1%80%D0%B5%D0%BA%D1%83%D1%80%D1%81%D0%B8%D0%B2%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BF%D0%B5%D1%80%D0%B5%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_lossless-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2_%D0%B2%D0%BE_FLAC&diff=2144&oldid=prev
Rain в 21:38, 17 марта 2013
2013-03-17T21:38:12Z
<p></p>
<table style="background-color: #fff; color: #202122;" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="ru">
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Предыдущая</td>
<td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Версия 21:38, 17 марта 2013</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l10">Строка 10:</td>
<td colspan="2" class="diff-lineno">Строка 10:</td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>:и, естественно, утилиты для работы с FLAC-форматом.</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>:и, естественно, утилиты для работы с FLAC-форматом.</div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">Для использования просто запустить команду внутри нужного каталога.</ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;"></ins></div></td></tr>
<tr><td colspan="2" class="diff-side-deleted"></td><td class="diff-marker" data-marker="+"></td><td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">'''Предупреждение:''' Для обработки не-FLAC-файлов, представляющих собой целый альбом в одном файле, лучше сразу воспользоваться [[Перекодирование одиночного lossless аудиофайла во FLAC по CUE-таблице|этим скриптом]].</ins></div></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br/></td></tr>
<tr><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>----</div></td><td class="diff-marker"></td><td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>----</div></td></tr>
</table>
Rain
https://linuxoid.in/index.php?title=%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82_%D0%B4%D0%BB%D1%8F_%D1%80%D0%B5%D0%BA%D1%83%D1%80%D1%81%D0%B8%D0%B2%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BF%D0%B5%D1%80%D0%B5%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_lossless-%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2_%D0%B2%D0%BE_FLAC&diff=2143&oldid=prev
Rain: Новая страница: «Скрипт, представленный ниже, предназначен для рекурсивной конвертации '''APE''', '''ALAC''', '''Wav''…»
2013-03-17T21:33:41Z
<p>Новая страница: «Скрипт, представленный ниже, предназначен для рекурсивной конвертации '''APE''', '''ALAC''', '''Wav''…»</p>
<p><b>Новая страница</b></p><div>Скрипт, представленный ниже, предназначен для рекурсивной конвертации '''APE''', '''ALAC''', '''Wav''' и '''WavPack'''-файлов в формат FLAC внутри каталога, где он был запущен. При нахождении одного из указанных форматов и отсутствии соответствующих утилит для работы с ним, скрипт пропускает файл и выдает предупреждающее сообщение.<br />
<br />
Для поддержки всех перечисленных форматов в системе должны быть установлены следующие утилиты:<br />
<br />
* '''mac''' из пакета '''monkeys-audio''' для поддержки формата '''APE'''<br />
* '''alac''', который можно загрузить с http://crazney.net для поддержки формата '''Apple Lossless''' (файлы m4a)<br />
* ''wvunpack''' из пакета '''wavpack''' для декодирования '''WavPack'''-файлов<br />
* '''mp4info''' из пакета '''mpeg4ip-utils''' для работы с тегами в '''ALAC'''-файлах<br />
* '''ffmpeg''' для работы с тегами в '''WavPack''' и '''APE'''<br />
<br />
:и, естественно, утилиты для работы с FLAC-форматом.<br />
<br />
----<br />
<source lang=bash><br />
#!/bin/bash<br />
<br />
chkdec() {<br />
test $(which "${1}") || {<br />
echo -e "[\e[5;31mW\e[0;0m] Decoder $1 not found, skipping $3"<br />
continue<br />
}<br />
test $(which "${2}") || {<br />
echo -e "[\e[5;31mW\e[0;0m] Tag tool $2 not found, skipping $3"<br />
continue<br />
}<br />
}<br />
<br />
say_work() {<br />
echo -ne "[\e[5;36mW\e[0;0m] Processing: $file"<br />
}<br />
<br />
say_complete() {<br />
echo -e "\r[\e[0;32mV\e[0;0m] Decoding complete: $file"<br />
}<br />
<br />
say_failed() {<br />
echo -e "\r[\e[5;31mF\e[0;0m] Decoding FAILED: $file"<br />
}<br />
<br />
say_exist() {<br />
echo -e "[\e[0;33mE\e[0;0m] Already done: $file"<br />
}<br />
<br />
m4atags_convert() {<br />
mp4info "${1}" | awk '<br />
/^ Name:/{<br />
gsub(/^ Name: /, "TITLE=", $0)<br />
print<br />
}<br />
<br />
/^ Artist:/{<br />
gsub(/^ Artist: /, "ARTIST=", $0)<br />
print<br />
}<br />
<br />
/^ Year:/{<br />
gsub(/^ Year: /, "DATE=", $0)<br />
print<br />
}<br />
<br />
/^ Album:/{<br />
gsub(/^ Album: /, "ALBUM=", $0)<br />
print<br />
}<br />
<br />
/^ Genre:/{<br />
gsub(/^ Genre: /, "GENRE=", $0)<br />
print<br />
}<br />
<br />
/^ Track:/{<br />
gsub(/^ Track: /, "TRACKNUMBER=", $0)<br />
split($0, track)<br />
print track[1], "\nTRACKTOTAL="track[3]<br />
}<br />
<br />
/^ Disk:/{<br />
gsub(/^ Disk: /, "DISCNUMBER=", $0)<br />
print $1<br />
}<br />
<br />
/^ Comment:/{<br />
gsub(/^ Comment: /, "COMMENT=", $0)<br />
print<br />
}<br />
<br />
/^ Writer:/{<br />
gsub(/^ Writer: /, "COMPOSER=", $0)<br />
print<br />
}<br />
<br />
/^ Album Artist:/{<br />
gsub(/^ Album Artist: /, "PERFORMER=", $0)<br />
print<br />
}' | metaflac --import-tags-from=- "${2}"<br />
}<br />
<br />
apetags_convert() {<br />
ffmpeg -i "${1}" 2>&1 | sed -n '/Metadata:/,/Duration:/p' |<br />
awk 'BEGIN {<br />
IGNORECASE=1<br />
}<br />
<br />
/^ +Year +:/{<br />
print "YEAR="$3<br />
}<br />
<br />
/^ +Genre +:/{<br />
gsub(/^ +Genre +: /, "GENRE=", $0)<br />
print<br />
}<br />
<br />
/^ +Album +:/{<br />
gsub(/^ +Album +: /, "ALBUM=", $0)<br />
print<br />
}<br />
<br />
/^ +Comment +:/{<br />
gsub(/^ +Comment +: /, "COMMENT=", $0)<br />
print<br />
}<br />
<br />
/^ +Title +:/{<br />
gsub(/^ +Title +: /, "TITLE=", $0)<br />
print<br />
}<br />
<br />
/^ +Composer +:/{<br />
gsub(/^ +Composer +: /, "COMPOSER=", $0)<br />
print<br />
}<br />
<br />
/^ +Artist +:/{<br />
gsub(/^ +Artist +: /, "ARTIST=", $0)<br />
print<br />
}<br />
<br />
/^ +Part +:/{<br />
gsub(/^ +Part +: /, "DISCNUMBER=", $0)<br />
print<br />
}' | metaflac --import-tags-from=- "${2}"<br />
}<br />
<br />
find . -type f ! -iname "*.flac" |<br />
while read file<br />
do<br />
[ -e "${file%.*}.flac" ] && say_exist || {<br />
ext="$(basename "${file}")"<br />
ext="${ext##*.}"<br />
<br />
case "${ext}" in<br />
m4a)<br />
chkdec alac mp4info "$file" && {<br />
say_work<br />
{<br />
alac "${file}" | flac --best - --totally-silent -Vo "${file%.m4a}.flac" &&\<br />
m4atags_convert "${file}" "${file%.m4a}.flac" && rm -f "${file}"<br />
} && say_complete || say_failed<br />
}<br />
;;<br />
wav)<br />
say_work<br />
{<br />
flac --best "${file}" --totally-silent -Vo "${file%.wav}.flac" && rm -f "${file}"<br />
} && say_complete || say_failed<br />
;;<br />
ape)<br />
chkdec mac ffmpeg "$file" && {<br />
say_work<br />
{<br />
mac "${file}" - -d 2>/dev/null | flac --best - --totally-silent -Vo "${file%.ape}.flac" &&\<br />
apetags_convert "${file}" "${file%.ape}.flac" && rm -f "${file}"<br />
} && say_complete || say_failed<br />
}<br />
;;<br />
wv)<br />
chkdec wvunpack ffmpeg "${file}" && {<br />
say_work<br />
{<br />
wvunpack "${file}" -qo - | flac --best - --totally-silent -Vo "${file%.wv}.flac" &&\<br />
apetags_convert "${file}" "${file%.wv}.flac" && rm -f "${file}"<br />
} && say_complete || say_failed<br />
}<br />
;;<br />
esac<br />
}<br />
done<br />
</source><br />
<br />
[[Category:FLAC]][[Category:APE]][[Category:Конвертация]][[Category:Bash-скрипт]]</div>
Rain