Преобразование всех man-страниц Linux в текст / html или markdown

есть ли способ преобразовать все man-страницы Linux в обычный текст, html или markdown?

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

4 ответов


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

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

используйте команду man -k '' может перечислить все доступные имена man-страниц, которые могут быть лучше, чем find и zcat оригинальные файлы данных man-page; между тем, команда man имеет опцию -T, --troff-device[=DEVICE] это может генерировать HTML данного раздела и имени man-страницы. Таким образом, следующий скрипт bash приходит к преобразование всех 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 on хороший вариант, где обзор и Ctrl+F может удобно.


man -Hfirefox ls

открывает manpage "ls" непосредственно в firefox


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