Смена кодировки текстового файла с CP1251 на UTF8

Если при открытии текстового файла на экран выводятся крокозябы, то это говорит о том, что данный файл создан в неправильной кодировке. В моем случае этот файл был создан в Windows в его «уникальной» кодировке CP1251, а открыть его требовалось в Ubuntu с «правильной» кодировкой UTF8.

Для того, чтобы произвести смену кодировки тестового файла с CP1251 на кодировку UTF8 нам понадобится пакет enca. Все ниже описанное будет приведено для дистрибутива Ubuntu, но алгоритм действий будет работать и в других дистрибутивах.

Для Linux Mint, Ubuntu и Debian

Для смены кодировки с cp1251 на utf-8 есть отличная утилита – enca. Она очень маленькая и простая. В Linux по-умолчанию она не установлена, но ем можно легко установить.

Установка

В Debian или Ubuntu это сделать просто:

sudo apt-get install enca

Как пользоваться?

Конвертируем один файл в кодировку локали дистрибутива (по умолчанию это UTF-8), которая определяется автоматически:

enconv in_file.txt

Если у Вас сложный случай и Вы не знаете исходной кодировки:

enca -L ru -x UTF-8 in_file.txt out_file.txt

Если этих файлов окажется несколько, то команда выглядит несколько иначе:

find /home/koder/ -name "*.txt" | enconv

Теги:

Комментарии

Freol, 05.05.2010 22:11 #

Всё-таки так будет нагляднее ИМХО + мне сказали, что ваш способ для множества файлов не сработал…

$ find путь_к_директории -name “*.txt” -exec enconv {} \;

Зюзгин Иван, 06.05.2010 06:08 #

Поправил. Самому не было необходимости в конвертировании большого количества файлов

Diman, 26.11.2010 03:22 #

Спасибо! За Вашу, Точку зрения решения проблемы. Очень Вам признателен и Ваша статья, очень помогла мне. Спасибо. !

Артур, 16.05.2011 18:36 #

Спасибо, ваша статья очень помогла

Daniel First, 14.07.2011 16:44 #

помогите расшифровать: ШдИ!Чг…рРсйт“Х4·

Зюзгин Иван, 19.07.2011 08:53 #

Абракадабра какая-то

Daniel First, 01.08.2011 18:39 #

Я один остался недоволен=/

Александр, 25.04.2012 14:01 #

Пожалуйста, подскажите как в Windows 7 сменить кодировку имен файлов на UTF-8? Имена все в кириллице, перевод в транслит не уместен, нужно сменить именно кодировку. Какими средствами без Линукса это можно сделать?

Юра, 19.02.2015 08:05 #

Супер! Я три часа сидел мучился в ручную, перекодировал файлы в UTF-8. Оставалось ещё 2/3 работы, я думал свихнусь… И О чудо, пять минут и всё готово!!! Спасибо!!!






Интересное
Важное событие IT
Создание Cisco
Создание Cisco
Узнать подробнее
Оглавление
  1. Для Linux Mint, Ubuntu и Debian
    1. Установка
    2. Как пользоваться?