Есть ли способ конвертировать все справочные страницы Linux в обычный текст, html или уценку?
Мне нужно сделать это для каждого файла man, который я установил в своей системе.
Есть ли способ конвертировать все справочные страницы Linux в обычный текст, html или уценку?
Мне нужно сделать это для каждого файла man, который я установил в своей системе.
Да... Чтобы преобразовать одного из них, скажем, человека человека:
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 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 может быть удобным.
man -Hfirefox ls
открывает man-страницу "ls" непосредственно в firefox
Сегодня ваш счастливый день. Кто-то уже сделал это за вас. http://linux.die.net/