info 还会查找联机帮助页吗?

info 还会查找联机帮助页吗?

此外maninfo还可以提供命令信息。

  1. 对于我尝试过的命令,我发现info提供了与 相同的信息man。所以我想知道是否info总是查找手册页?它还循环什么?即它的来源是什么?
  2. 这两者是否为同一组命令提供信息?

答案1

所以我想知道信息是否总是查找手册页?

(假设你的问题是关于standalone-info)你的怀疑确实是正确的。如果独立程序info找不到相应的信息页,它将查找手册页。可以证明如下

首先,让我们创建一个既不作为 man 也不作为 info 存在的手册页。让我们创建一个mexico没有人员或信息的虚构命令。

确认: $ man mexico No manual entry for mexico $ info mexico (opens in Info, but displaces Top) No menu item `mexico' in node `(dir)Top'.

现在,创建一个简单的联机帮助页,并确保它位于路径中。 $ mkdir -p $HOME/.myman/man0 $ cat > $HOME/.myman/man0/mexico.0 .TH MEXICO 0 "2018" "Mexico Version 0.0" .SH SEE ALSO adisababa(0), timbuktu(0)

并查看它可以从 访问man。人的祈求是man [section] <name> export MANPATH=$HOME/.myman:$MANPATH export MANSECT=$MANSECT:0 man 0 mexico

检查同样的情况info。调用是info <node> [topic].这应该会在信息中打开相同的页面。 info mexico 0

不幸的是,只有在未找到信息节点时,信息才会执行此操作。如果找到该节点,但未找到主题,info 将简单地打开该信息节点,并表示未找到该主题。它正在使用手册页的提示将位于信息的第一行。应该说文件:*联机帮助页*

不幸的是,info 文档对此什么也没说。

它还查找什么?即它的来源是什么?

据我所知来源(因为它在官方文档中没有提及),它可以阅读手册页,但是来源没有任何其他暗示(除了简单的信息)。

这些info页面通常安装在几个系统目录中。可以通过在字符串中查找“/info”来找到这些目录 strings `which info` | grep /info 可以通过更新来设置更多信息目录INFOPATH。信息文件是从他们的文本信息来源。

这两者是否为同一组命令提供信息?

不,infoman是两个独立的实用程序,具有不同的文档页面。许多开发人员喜欢同时提供信息页和手册页,但它们是分开存在的,并且一些开发人员可能决定只提供其中之一。正如我之前提到的,信息可以阅读手册页如果没有找到相应的信息文件(您可以确定它何时正在阅读手册页)。 (手册页是一个较旧的系统,根本不会回退到信息页面)。

答案2

不,info是一个单独的公用事业,具有单独的页面。然而,没有什么可以阻止程序作者/文档编写者为两者提供相同的信息。

答案3

在以下说明中,重要的是不要混淆 Texinfo ( texinfo)、独立信息阅读器 ( info) 和嵌入在 GNU Emacs 中的信息阅读器 ( M-x info)。

有两种主要的 Info 阅读器:info,一个专门用于读取 Info 文件的独立程序(请参阅什么是 Info?)和infoGNU Emacs 中的包,一个通用编辑器。

Texinfo 手册:概述一章,添加输出格式一节:

有时,有人提出从 Texinfo 源生成传统 Unix 手册页的建议。然而,由于手册页有严格的约定格式,创建一个好的手册页需要一个与编写好的用户教程和/或好的参考手册的典型 Texinfo 应用程序所需的完全不同的源。这使得生成手册页与 Texinfo 设计目标不兼容,即不必为不同的输出格式以不同的方式记录相同的信息。您不妨直接编写手册页。

信息手册的结构与man页面完全不同,请参阅GNU 信息有什么用?

根据@Kyle Jones 的说法,请参阅https://unix.stackexchange.com/a/77533

原始的 Texinfo 处理器和 Info 文档浏览器两者都是用 Lisp 编写并在 Emacs 中运行。几年后,独立的 Texinfo 实用程序问世。

独立信息:章节独立信息

Emacs Info 和独立 Info 有几乎相同的用户界面,尽管定制和其他细节有所不同(本手册解释了独立的信息阅读器)。

此外,GNU Emacs 可以读取man页面(man 包,默认安装),Info 系统(makeinfo, info, ...)基于创建一个页面的原理文件系统1.看一下 GNU Emacs 的内置文档系统:M-x describe-function、 typemanEnter.

man 是一个交互式自动加载的 Lisp 函数man.el

(男人 MAN-ARGS)

获取 Un#x 手册并将其放入缓冲区。该命令是 man 包中的顶级命令。它运行 Un#x 命令来检索和清理联机帮助页在后台并将结果放置在Man-mode浏览缓冲区中。 [...]

对于特定部分的联机帮助页,请使用以下任一选项。 “cat(1)”是交叉引用的显示方式,并作为“1 cat”传递给 man。

    cat(1)
    1 cat

要查看与某个主题相关的所有部分的联机帮助页,请使用“所有页面”选项(如果不是默认选项,则可能是“-a”),然后使用Man-next-manpage(Mn) 等逐步执行。添加到Man-switches以使此选项永久存在。 [...]

我们可以使用 options 知道信息阅读器将使用哪个来源-aw。有关详细信息,请参阅手册“info-stnd”的“调用信息”部分。

prompt% info -aw dmesg
*manpages*
prompt% info -aw printf
/usr/share/info/libc.info.bz2
*manpages*

1如需了解更多信息,请阅读手册 Texinfo。

相关内容