我想使用类似于 python help('topics') 函数的东西来探索 bash 中的手册页。 bash 中存在这个吗?
我知道 bash 相当于 python 的 help('modules') 看起来像这样:
dpkg –get-selection
答案1
Bash 有帮助功能,但它只能告诉你 Bash 内置函数的信息。否则,你真的会被 man 命令本身困住,它确实有一些有用的选项。
尝试以下操作
man -a intro
man -k *keyword*
man -K *keyword*
答案2
help('topics')
显示了 Python 参考手册的简短版本的目录。最接近的是 bash 手册的目录。这不包括外部命令dpkg
(从 bash 的角度来看,它相当于 Python 的第三方库)。
该help
命令显示 bash 内置命令和关键字的列表。如果您添加该内置函数的名称(例如help alias
),您将获得该内置函数的帮助。这与 Python 提供的功能非常接近。
如需更完整的文档(例如 Python 中的文档),请阅读手册。您可以在网络浏览器中或使用info
程序 ( info bash
) 来阅读它。 Info 是一种古老的超文本浏览器,其标记语言比 HTML 简单得多。它主要由 GNU 使用。如果命令没有信息手册,程序info
将显示手册页。 Emacs 为信息文档提供了更好的浏览器。
如果您还需要外部命令,则需要查阅这些命令的手册。您可以查看命令的手册页列表(相当于help('topics')
整个操作系统的命令行)apropos -s 1 ''
(1 是部分用于用户命令;''
意味着搜索空字符串,即返回所有内容)。请注意,在典型的系统上,这将返回数千甚至数万次点击,因此这不是探索命令的实用方法。东西太多了。
如果您大致了解自己的用途,请使用apropos
带有关键字的命令,例如apropos -s 1 module
查看其简短描述包括“模块”的命令列表 - 这是相当杂乱的一堆。然后您可以调用man
来浏览特定的手册页。
答案3
既然你提到了dpkg
,你可能正在使用 debian (或 ubuntu 或其他一些 debian 衍生品)。
如果是这样,您可以使用dlocate -lsman <pkgname>
(或者即使dpkg -L <pkgname> | grep '/usr/share/man/.*gz'
您没有dlocate
安装)来浏览特定软件包的手册页 - 这将列出属于某个软件包的所有手册页。
对于特定包上的定向 RTFM 最有用,但对于偶然发现则不太有用。
(全面披露:我是 dlocate 的作者和 debian 中软件包的维护者,所以我有点偏向于使用它)。