比如运行 man wget,显示的是man格式关于wget帮助文档,man命令主要是方便用户在使用时查询。
info wget 显示的是info格式的完整文档,相当于一本书了,类似教程,详细介绍软件是做什么的,如何使用。相比于man,info出来的内容更适合入门学习使用的。
gnu的官方网站上软件的使用教程是info文档转成html的。所以直接看info就可以了。
我想把man和info出来的内容转换成html看。
man
man格式是用troff排版系统写的,各个软件的man文件在/usr/share/man/目录下,比如wget在它下面的./man1/wget.1.gz
想转成html网页用浏览器看,因为gz是压缩过的,使用zcat解压:
zcat /usr/share/man/man1/wget.1.gz | groff -mandoc -Thtml >man_wget.html
info
info格式是texinfo排版系统写的,各个软件的info文件在/usr/share/info/目录,比如wget在./wget.info.gz,和man不一样,info是texi文件编译后的结果,不知道有没有转换info文件的工具。
运行info texinfo查看texinfo的文档可以发现,最初info文档最初是texi格式书写的,然后使用texinfo系统的texi2any工具可以转换成各种类型格式的文档,比如info html pdf之类的东西。
需要找到wget的texi格式的文档,然后转换成html。texi文档可以在wget的源码包里找到。通常用的系统没有源码。可以到gnu的网站或者镜像站点下载源码。
或者用包管理工具apt下载源码,前提是软件源sourcelist里有deb-src的地址,因为通常用不到有的是被注释了,就需要取消一下注释。取消注释后 apt update 更新一下软件源,然后安装。
先查找运行的程序属于哪个源码包,比如cp程序在coreutils源码包里,wget就在wget包里。
dpkg -S `which wget`
显示属于 wget 源码包,就下载wget源码包
apt -d source "wget"
这个时候源码包就下载到当前目录了。解压之后的doc目录里就有源文件wget.texi。切换到doc目录运行 texi2any --html -o html wget.texi
--html 选项表示转成html格式文件,
-o 选项设置的是输出目录,
转换之后html文件就编译到html文件夹了。