Преобразование всех страниц руководства Linux в текст /html или уценку - программирование

Преобразование всех страниц руководства Linux в текст /html или уценку

Есть ли способ конвертировать все справочные страницы Linux в обычный текст, html или уценку?

Мне нужно сделать это для каждого файла man, который я установил в своей системе.

4b9b3361

Ответ 1

Да... Чтобы преобразовать одного из них, скажем, человека человека:

zcat /usr/share/man/man1/man.1.gz  | groff -mandoc -Thtml

Если вы хотите, чтобы "все установлено на вашем ПК", вы просто перебираете их. Для разных выходных данных (например, текст) используйте другое "устройство" (аргумент -T).

На всякий случай... если "итерация" была реальной проблемой, вы можете использовать:

OUT_DIR=...

for i in `find -name '*.gz'`; do 
    dname=`dirname $i`
    mkdir -p $OUT_DIR/$dname
    zcat $i | groff -mandoc -Thtml > $OUT_DIR/$i.html
done

Ответ 2

Используйте команду man -k '', чтобы отобразить все имена имен man-страниц, которые могут быть лучше, чем find и zcat исходные файлы данных man-page; Между тем у команды man есть опция -T, --troff-device[=DEVICE], которая может генерировать HTML данного раздела и имени man-страницы. Таким образом, следующий bash script приходит к конвертировать все man-страницы, доступные в вашем Linux, в файлы HTML:

man -k '' | while read sLine; do
    declare sName=$(echo $sLine | cut -d' ' -f1)
    declare sSection=$(echo $sLine | cut -d')' -f1|cut -d'(' -f2)
    echo "converting ${sName}(${sSection}) to ${sName}.${sSection}.html ..."
    man -Thtml ${sSection} ${sName} > ${sName}.${sSection}.html
done

В интранете без доступа к Интернету онлайн-сервис man-страниц недоступен, поместите эти файлы в ваш статический HTTP-сервер, например Nginx с autoindex на является хорошим вариантом, где просматривать и Ctrl + F может быть удобным.

Ответ 3

man -Hfirefox ls

открывает man-страницу "ls" непосредственно в firefox

Ответ 4

Сегодня ваш счастливый день. Кто-то уже сделал это за вас. http://linux.die.net/