关于新的man版本出现“无法解析 /usr/share/man/zh_CN/man1/ls.1.gz: 没有那个文件或目录“

今天学习了下man,有关详细资料参考:http://www.cnblogs.com/hnrainll/archive/2011/09/06/2168604.html

toor@door:/usr/share/doc/man-db/examples$ man ls

man: 无法解析 /usr/share/man/zh_CN/man1/ls.1.gz: 没有那个文件或目录

版本

toor@door:~$ man --version

man 2.5.7

原因:因为新的man支持环境变量了。查看帮助:

NAME

       man - 格式化并显示在线帮助手册页

       manpath - 定义用户查找man手册页的路径



     ...此处省略n字...



       LANG   如果   LANG   有定义,它的值将指定man在查找文档时首先查找的子目录。因此,命令“LAN   G=dk  man  1

              foo”会使man在查找man页时首先查找../dk/man1/foo.1,如果在其中没有找到相

              关文档,则查找../man/foo.1,此目录是由查找路径指定的。



       NLAPATH,

              环境变量   NLAPATH   和  LC_MESSAGES  (或当后一个不存在时使用  LANG  )充当了定位文档目录的

              角色。(但英文信息是编译进命令的,所以针对英文而言,就没有目录存在)。注意,象col    (1)这样被man调用的程序也使用象

              LC_CTYPE 这样的变量。



       PATH   变量 PATH 是在解释查找man手册页路径时使用的。

shell中输入:locale 查看本地locale

toor@door:~$ locale

LANG=zh_CN.UTF-8

LANGUAGE=zh_CN:en

LC_CTYPE="zh_CN.UTF-8"

LC_NUMERIC="zh_CN.UTF-8"

LC_TIME="zh_CN.UTF-8"

LC_COLLATE="zh_CN.UTF-8"

LC_MONETARY="zh_CN.UTF-8"

LC_MESSAGES="zh_CN.UTF-8"

LC_PAPER="zh_CN.UTF-8"

LC_NAME="zh_CN.UTF-8"

LC_ADDRESS="zh_CN.UTF-8"

LC_TELEPHONE="zh_CN.UTF-8"

LC_MEASUREMENT="zh_CN.UTF-8"

LC_IDENTIFICATION="zh_CN.UTF-8"

LC_ALL=



所以如果你的系统没有安装manpages-zh中文手册的时候会出现man: 无法解析 /usr/share/man/zh_CN/man1/ls.1.gz: 没有那个文件或目录的情况(即使是你在/etc/manpath.config中没有设置中文搜索路径,也会导致这个错误出现。

上一篇:Linux - How To Set Up an NFS Mount on CentOS 6


下一篇:css3新增的属性