5 февраля 2023 г.
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.
Обычный путь по умолчанию модуля gconv.
Обычный файл настройки по умолчанию модуля gconv.
Обычный путь кэша настроек модуля gconv.
Depending on the architecture, the above files may instead be located at directories with the path prefix /usr/lib64.
POSIX.1-2001.
Преобразует текст из кодировки ISO 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>
Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.
Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на .