Answers:
如果仅设置MANPATH,它将覆盖默认值,并且您将无法访问标准手册页。例如,man ls
在设置MANPATH之前可以工作,但之后则不能工作。
要附加搜索目录而不覆盖默认目录,请在MANPATH前面加上一个冒号,如下所示:
export MANPATH=":/path/to/custom/man"
添加冒号使您可以访问标准系统手册页和MANPATH变量中引用的自定义页。
这个答案是manpath(1)带来的:
如果设置了$ MANPATH,则manpath会显示其值,而不是即时确定它的值。如果$ MANPATH以冒号作为前缀,则变量的值将附加到由配置文件的内容确定的列表中。如果冒号位于变量值的末尾,则确定的列表将附加到变量的内容之后。如果变量的值包含双冒号(::),则将确定的列表插入到值的中间,即两个冒号之间。
IMO,您应该在PATH的末尾添加自定义目录
PATH=$PATH:/my/dirs
这样一来,您的自定义目录就不会超过系统的二进制文件/库,这是一个较小的安全问题。
您以相同的方式设置MANPATH(默认情况下,MANPATH为空)。
MANPATH=$MANTPATH:/my/dirs
您不需要使用行为良好的程序包设置MANPATH,因此,如果它没有损坏,请不要对其进行修复,如果它已损坏,则最好提交错误报告;)
将此添加到〜/ .bashrc
export PATH=$PATH:/my/dirs
export MANPATH=$MANPATH:/my/dirs
MANPATH=$MANTPATH:/my/dirs
也许应该是:MANPATH=$MANPATH:/my/dirs