我该如何纠正错误的 $MANPATH(环境变量)?

我该如何纠正错误的 $MANPATH(环境变量)?

我的 manpath 似乎指向了错误的文件。当我调用时,echo $MANPATH我得到这个输出:

/usr/local/texlive/2021/texmf-dist/doc/man

当我尝试使用手册页来执行 ls 或 man 本身之类的操作时,出现以下错误:

No manual entry for ls
See 'man 7 undocumented' for help when manual pages are not available.

我怎样才能解决这个问题?

答案1

重置MANPATH,因此:

MANPATH="" man man

阅读man man以了解默认值MANPATH

编辑您的~/.bashrc(或您设置的任何地方MANPATH)以明确指定默认值MANPATH,加上/usr/local/texlive/2021/texmf-dist/doc/man

MANPATHman是按顺序搜索的目录的冒号分隔列表。如果将其添加/usr/local/texlive/2021/texmf-dist/doc/man到 的开头MANPATH,它将遮蔽man名称重叠的系统页面。如果将其添加到 的末尾MANPATH,则仅当名称重叠时才会优先使用系统man页面(如果它们都有,例如,将使用ls.1中的第一个)。MANPATH

答案2

要恢复的正常工作man,请更正您设置MANPATH变量的位置,使其在开头或结尾处有一个冒号,例如

MANPATH=":/usr/local/texlive/2021/texmf-dist/doc/man"

这样,变量的值将被附加到搜索的默认路径列表中(或添加到前面,或插入到自定义路径之间)。

相关内容