Перекодування текстових файлів з cp1251 в utf-8 за допомогою iconv, linux для чоловіків!
У Windows по умочанію використовується кодування символів CP1251, що вряди-годи доставляє проблем користувачам інших, нормальних ОС, які давно перейшли на юнікод і забули про проблеми з кодуваннями як страшний сон. Але користувачі Windows як американці, не знають, що існують інші країни ОС і зберігають субтитри в CP1251 що робить їх нечитабельними для інших.
Для вирішення цієї проблеми є iconv який якраз і служить для перекодування текстових файлів з одного кодування в іншу. У всіх майже дистрибутивах даний пакет встановлюється за умовчанням, але якщо його раптом не виявилося - встановіть його за допомогою вашого пакетного менеджера.
Для перекодування досить ввести всього одну команду в терміналі, а саме:
Поясню: ключ "f" задає вихідну кодування в якій файл знаходиться зараз, ключ "t" вказує цільову кодування, ключ "o" задає шлях для збереження перекодувати файлу.
Ось, все дуже просто. Так само ви можете таким чином кодувати будь-які текстові файли. Часто і тексти пісень трапляються з такою неприємною особливістю.
Нещодавно дізнався більше простий і зрозумілий спосіб перекодування текстових файлів - за допомогою enconv.
Не буду приводити повного синтаксису і опису всіх ключів. Для перекодування досить одного, наприклад:
За допомогою даної команди ми перегнали текст в UTF-8. Так, саме, просто перегнали без необхідності вказівки вихідної кодування. Все просто, вказуємо лише ту яку хочемо отримати. Бажано зробити резервнуб копію файлу, так як наскільки я зрозумів enconv'у можна задати вихідний файл і змінюватися кодування буде прямо в початковому файлі.
Якщо у кого то є ще якісь методи перекодування текстових файлів - прошу в каменти.