`男人` 不提供文档(``) 可执行文件指向

`男人` 不提供文档(``) 可执行文件指向

man <command>并不总是指向“正确的”(如“由which <command>”给出)。有没有办法确保(或至少增加机会)我获得与实际执行的命令相对应的文档?

例子

pack(一个团团脚本)我得到这个:

$ which pack
.../dev/unix_scripts/pack
$ man pack                                                                                                                                  LIBPACK(3)

NAME
       libpack - support for connected components
...

请注意,这里.../dev/unix_scripts/pack实际上没有手册页,所以我想man告诉我它没有找到它。

尝试过

如果 man 获取可执行文件的完整路径,我可以这样做:

$ which pack | man

这:

$ man 1 pack
No entry for pack in section 1 of the manual

但我不确定仅查看第 1 节(“可执行程序或 shell 命令”)是否过于严格。

一般背景

底层上下文是我正在尝试编写一个(python)函数,该函数将为我提供有关任何“有效”(在意义上which <command>)可执行文件的一些信息。名称通过 链接到唯一的可执行文件which。如何获取有关该可执行文件的类似文档的信息?

我(在 stackoverflow 上发布我的问题)[https://stackoverflow.com/questions/73814043/universal-help-for-terminal-commands],它被作为“不是软件问题”而被驱逐,所以我减少了问题并发布在这里。

答案1

man <command>是不准确的——发行版通常不仅仅包含命令的手册页。这就是您在这里遇到的情况:man pack向您展示库的文档。

您提到您尝试过man 1 pack,但您想知道这是否限制太多;在我看来,如果您只对命令感兴趣,那么这是一个很好的方法。在某些情况下,您可能还需要查看第 8 节,但对于非管理命令,man 1 foo大多数情况下都会匹配命令(我能想到的例外是man 1 intro)。

相关内容