iconv(1) General Commands Manual iconv(1)

НАИМЕНОВАНИЕ

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

ОБЗОР

iconv [options] [-f from-encoding] [-t to-encoding] [inputfile ...]

ОПИСАНИЕ

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

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

ПАРАМЕТРЫ

Использовать начальную_кодировку для входных данных.
Использовать конечную_кодировку для выходных данных.
If the string //IGNORE is appended to to-encoding, characters that cannot be converted are discarded and an error is printed after conversion. (Characters that cannot be decoded are treated as an error with or without this flag.)
Если в конечную_кодировку добавлена строка //TRANSLIT, то при необходимости и возможности символы будут транслитерироваться. Это означает, что когда символ невозможно представить в конечной кодировке, он может быть приблизительно преобразован в один из похожих символов. Символы, которые отсутствуют в конечной кодировке и их невозможно транслитерировать, в выводе заменяются на знак вопроса (?).
Вывести все известные кодировки символов.
Discard characters that cannot be converted instead of terminating when encountering such characters. POSIX requires that this option does not change the exit status of the program.
Использовать файл_результата для вывода.
Параметр игнорируется, предоставляется только для совместимости.
Выводить информацию о ходе работы в стандартный поток ошибок при обработке нескольких файлов.
-?
Показать справку по использованию и завершить работу.
Показать краткую справку по использованию и завершить работу.
Показать номер версии, лицензию и уведомление о гарантиях для 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.

ПРИМЕРЫ

Преобразует текст из кодировки ISO/IEC 8859-15 в 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> и Kirill Rekhov <krekhov.dev@gmail.com>

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

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

11 июня 2025 г. Справочные страницы Linux 6.15