Scroll to navigation

iconv(1) General Commands Manual iconv(1)

ИМЯ

iconv - преобразует текст из одной кодировки в другую

СИНТАКСИС

iconv [параметры] [-f начальная_кодировка] [-t конечная_кодировка] [входной_файл]…

ОПИСАНИЕ

Программа iconv читает текст в одной кодировке и выдаёт его в другой кодировке. Если входной файл не указан, или если как имя указана черта (-), то iconv читает данные со стандартного ввода. Если выходной файл не указан, то iconv осуществляет запись в стандартный вывод.

Если начальная_кодировка не задана, то по умолчанию используются данные о кодировке текущей локали. Если конечная_кодировка не задана, то по умолчанию используются данные о кодировке текущей локали.

ПАРАМЕТРЫ

Использовать начальную_кодировку для входных данных.
Использовать конечную_кодировку для выходных данных.
Если в конечную_кодировку добавлена строка //IGNORE, то символы, которые невозможно преобразовать, отбрасываются и после преобразования выводится ошибка.
Если в конечную_кодировку добавлена строка //TRANSLIT, то при необходимости и возможности символы будут транслитерироваться. Это означает, что когда символ невозможно представить в конечной кодировке, он может быть приблизительно преобразован в один из похожих символов. Символы, которые отсутствуют в конечной кодировке и их невозможно транслитерировать, в выводе заменяются на знак вопроса (?).
Вывести все известные кодировки символов.
Отбрасывать символы, которые невозможно преобразовать, а не прекращать работу при обнаружении такого символа.
Использовать файл_результата для вывода.
Параметр игнорируется, предоставляется только для совместимости.
Выводить информацию о ходе работы в стандартный поток ошибок при обработке нескольких файлов.
-?
Показать справку по использованию и завершить работу.
Показать краткую справку по использованию и завершить работу.
Показать номер версии, лицензию и уведомление о гарантиях для iconv.

КОД ЗАВЕРШЕНИЯ

При успешном выполнении возвращается 0, при ошибках возвращается ненулевое значение.

СРЕДА ОКРУЖЕНИЯ

Для преобразования между кодировками программа iconv использует функцию iconv(3), которая, в свою очередь, использует модули gconv (динамически загружаемые общие библиотеки). Перед вызовом iconv(3) программа iconv сначала должна разместить дескриптор преобразования с помощью iconv_open(3). На работу последней функции влияет настройка переменной окружения GCONV_PATH:

Если GCONV_PATH отсутствует, то iconv_open(3) загружает системный файл кэша настроек модуля gconv, созданного iconvconfig(8) и затем, на основе настройки, загружает модули gconv, необходимые для выполнения преобразования. Если системный файл кэша настроек модуля gconv недоступен, то используется системный файл настроек модуля gconv.
Если GCONV_PATH задана (список путей через двоеточие), то системный файл кэша настроек модуля gconv не используется. Вместо него iconv_open(3) пытается загрузить файлы настройки сначала из каталогов в GCONV_PATH в порядке, заданном в системном файле настроек по умолчанию модуля gconv. Если каталог не содержит файл настройки модуля gconv, все модули gconv, которые он может содержать, игнорируются. Если каталог содержит файл настройки модуля gconv и определённый им модуль, требуемый для этого преобразования, доступен в каталоге, то необходимый модуль загружается из этого каталога; используется первый подходящий модуль, найденный в GCONV_PATH. Это позволяет пользователям использовать свои модули и даже заменять системные модули, указывая такие модули в каталогах GCONV_PATH.

ФАЙЛЫ

/usr/lib/gconv
Обычный путь по умолчанию модуля gconv.
/usr/lib/gconv/gconv-modules
Обычный файл настройки по умолчанию модуля gconv.
/usr/lib/gconv/gconv-modules.cache
Обычный путь кэша настроек модуля gconv.

В зависимости от архитектуры, вышеуказанные файлы вместо этого могут быть расположены в каталогах с префиксом пути /usr/lib64.

СТАНДАРТЫ

POSIX.1-2008.

ИСТОРИЯ

POSIX.1-2001.

ПРИМЕРЫ

Convert text from the ISO/IEC 8859-15 character encoding to UTF-8:


$ iconv -f ISO-8859-15 -t UTF-8 < input.txt > output.txt

В следующем примере выполняется преобразование из UTF-8 в ASCII с транслитерацией где возможно:


$ echo abc ß α € àḃç | iconv -f UTF-8 -t ASCII//TRANSLIT
abc ss ? EUR abc

СМОТРИТЕ ТАКЖЕ

locale(1), uconv(1), iconv(3), nl_langinfo(3), charsets(7), iconvconfig(8)

ПЕРЕВОД

Русский перевод этой страницы руководства разработал Azamat Hackimov <azamat.hackimov@gmail.com>, Dmitriy S. Seregin <dseregin@59.ru>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов <pavia00@gmail.com> и Сухичев Михаил Иванович <sukhichev@yandex.ru>

Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику по его адресу электронной почты или по адресу списка рассылки русских переводчиков.

2 мая 2024 г. Linux man-pages (unreleased)