LINUX.ORG.RU

Скрипт исправления кодировки

 


0

1

Есть скрипт для исправления кодировки файлов:

#!/bin/bash
find ${1} -iname \*.cue -print0 | xargs -0 -n 1 enconv
Исправляет CP-1251. Но с iso-8859-15 ничего не делает. Это особенность enconv или можно что-то сделать, чтобы он исправил iso-8859-15?

econv работает автоматом, а enca пытается определить кодировку. Не забудь сохранить исходные файлы на вский. Ещё можешь попробовать прямо указать кодировку (man enca). И ещё можешь заюзать recode

anonymous
()
Ответ на: комментарий от anonymous

Я английский не знаю. Здесь http://zenway.ru/page/enca сказано: [q]Для автоматического определения кодировки файла и преобразования её в соответствии с системной кодировкой нужно выполнить: enconv имя-файла.txt[/q] Так почему же он не трогает файлы с iso-8859-15? По идеи должен преобразовывать…

KOT040188 ★★
() автор топика
Ответ на: комментарий от KOT040188

Автоматически значит он берёт твою текущую локаль (utf--ru скорее всего). А enca (это тот же файл, просто определяет по имени) пытается определить кодировку. В любом случае если ты знаешь что куда конвертировать, то укажи это.

anonymous
()
Ответ на: комментарий от Ygor

Мне не надо преобразовывать имена файлов.

KOT040188 ★★
() автор топика
Ответ на: комментарий от anonymous

Спасибо, у меня уже есть работа. По теме что-нибудь будет? Я как-то переводил мануал unclutter гуглом… толку было ноль, даже меньше ноля, только запутал. Поэтому предпочитаю использовать готовые переводы.

KOT040188 ★★
() автор топика
Последнее исправление: KOT040188 (всего исправлений: 3)
Ответ на: комментарий от KOT040188

Но ты же знаешь откуда и куда нужно перекодировать? Короче ставь recode и пиши аргумент вроде cp1251..utf8. Если будет ругаться на конец строки добавь -f

anonymous
()
Ответ на: комментарий от anonymous

Я не знаю откуда, могут быть разные кодировки!

KOT040188 ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.