我有一个目录,其中包含手册页文件和一些其他文件:
$ ls doc
cheatsheet.svg colorschemes.md config howto-publish-a-release.md ranger.1
ranger.desktop ranger.pod rifle.1 rifle.pod tools
感兴趣的两个文件是rifle.1
和ranger.1
。我希望能够执行man ranger
并查看它的手动输入。为此,我将位置添加doc
到我的$MANPATH
$ echo $MANPATH
/path/to/doc::/home/.opam/system/man:/home/.opam/system/man:/home/.opam/system/man
$MANPATH
在我接触它之前,最后 3 个条目曾经存在于其中。我还尝试设置$MANPATH
并/path/to/doc
删除其他所有内容。无论哪种情况,当我发出 man 命令时,都会收到错误
$ man ranger
No manual entry for ranger
我究竟做错了什么?
答案1
手册页必须组织成MANPATH
.第 1 部分中的页面必须位于man1
子目录中
mkdir -p /tmp/man/man1 # /tmp/man is the MANPATH component
cp ranger.1 /tmp/man/man1/ # Put ranger.1 into the man1 subdirectory
MANPATH=/tmp/manman ranger # Override the MANPATH for the example
您可以尝试ln -s . man1
,它创建一个man1
实际上与当前目录()相同的“子目录” doc
,然后您的示例应该可以工作:
MANPATH=/path/to/doc man ranger