помню кто-то подсказывал как запустить программу, установив для неё кастомную кодировку. По типу "команда кодировка имя_программы" Убей, не могу вспомнить как это делается. Проблема в следующем: написал пхп скрипт, который вызывает через system - man с параметром и вывод выдает на страницу. Но там полно нечитабельных символов. Использую utf-8. Как сделать ответ системы читабельным?
если вывод в терминал, то: Code: prog|iconv -t locale а если ГУИ, то: Code: LANG=locale prog вместо locale поставить нужную тебе локаль(кодировку)
попробовал так: system("man " . $_GET['command'] . " | iconv -cst UTF-8"); не канает ПС тему наверное в кодинг надо перенести
посотри на вывод: Code: locale -a там будут все названия кодировок, установленных в системе, и выбирай нужную тебе.
посмотрел локали, нашёл там ru_RU.utf-8 PHP: man ls | iconv -t 'ru_RU.utf-8' iconv: преобразование в `ru_RU.utf-8' не поддерживается Попробуйте `iconv --help' или `iconv --usage' для получения более подробного описания. Ошибка исполнения команды форматирования или просмотра. Системная команда (cd /usr/share/man/ru && (echo ".pl 11i"; /usr/bin/gunzip -c '/usr/share/man/ru/man1/ls.1.gz') | /usr/bin/gtbl | /usr/bin/nroff -c -mandoc 2>/dev/null | /usr/bin/less -is) завершилась с кодом 36096. Ошибка исполнения команды форматирования или просмотра. Системная команда (cd /usr/share/man && (echo ".pl 11i"; /usr/bin/gunzip -c '/usr/share/man/man1/ls.1.gz') | /usr/bin/gtbl | /usr/bin/nroff -c -mandoc 2>/dev/null | /usr/bin/less -is) завершилась с кодом 36096. Ничего про ls в руководстве нет koi8r тоже не канает. как узнать кодировку в который вываливается man?
неправильно делаешь, чтобы пользоваться iconv, набери iconv --list Если на вид не можешь отличать, в konsole Настройка->Кодировка ставишь сначала одну потом в этой же konsole делаешь man свой, если неправильно ставишь другую кодировку и опять делаешь man то есть после выключения этой konsole кодировка примет старое положение, т.к. ты ставишь значения кодировки не по-умолчанию а на один сеанс обычно это либо utf либо cp1251 либо koi8-r
в консоли делаешь: locale -a и смотришь, какая кодировка тебе нужна. например ru_RU.CP1251 потом снова в консоли пишешь: LANG="ru_RU.CP1251" my_program где `my_program` это прога, которую хочешь запустить
На крайний случай можно будет сменить кодировку страницы. А это будет скорее всего либо koi-8 либо utf-8