【问题标题】:Creating a text file that serves as a manual for commands in Unix创建一个文本文件作为 Unix 中的命令手册
【发布时间】:2019-02-19 23:52:34
【问题描述】:

有没有办法创建一个文本文件,其功能与 unix 中的 man 命令相同?本质上是创建一个格式化的文本文件,其目的与 Unix 的手册相同。无论如何,我可以使用 grep 或 sed 命令从本手册文本文件中提取命令信息吗?

如果有人有任何资源或任何关于我如何开始或学习如何做到这一点的提示,那将是有帮助的。

【问题讨论】:

标签: c unix emacs manual


【解决方案1】:

手动man man,我的男人。

man man

:-)

【讨论】:

    【解决方案2】:

    手册页通常存储在 /usr/share 下的 man 目录中,您可以使用 manpath 查找您的发行版使用的目录。该目录通常分为子目录man1、man2、...等与man 节对应,文件命名为program_name.1(其中1 是节号)。例如,cat 的 man 文件可以在 /usr/share/man/man1/cat.1 中找到。

    这些文件是使用troff(一种排版语言)和man 宏包编写的。您可以直接查看这些文件,但是如果您不了解 troff 语法,它们会让人感到困惑。你可以使用命令

    nroff -man man_file.1
    

    查看手册的排版版本,其实man命令基本上就是找到你要找的man文件,然后通过nroff和less来运行。您可以使用管道模拟此功能:

    nroff -man man_file.1 | less
    

    有些系统会压缩他们的 man 文件,在这种情况下你需要先使用gunzip

    gunzip -c man_file.1.gz | nroff -man | less
    

    因此,要搜索 man 文件,您可以将此输出通过管道传输到 grep、sed 甚至是文件中以进行进一步处理。需要注意的一点是,nroff 的输出将包含一些用于在终端上格式化的转义序列,因此如果在文本编辑器中打开它可能看起来很乱,尽管它仍然可以与 sed 之类的程序一起使用。

    您可以从以下链接中找到有关 troff 的更多信息:

    • Groff troff 的 GNU 实现(用于大多数系统)。
    • Troff Resources troff 及其各种预处理器的论文集。
    • Unix Text Processing 一本关于 troff 和其他基于 unix 的文本处理的书。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多