> 文章列表 > 完整指南:如何安装Man手册

完整指南:如何安装Man手册

完整指南:如何安装Man手册

Man手册简介

man手册是Unix和类Unix操作系统中的命令行工具,用于提供关于特定命令、函数和文件的帮助文档。它通常包含命令的语法、选项、参数、示例以及其他相关信息。man手册可以通过在终端输入"man"命令,后跟要查看的命令或函数名称来访问。man手册按照章节划分,每个章节包含不同类型的信息,如命令、库函数、设备驱动程序等。

Linux 的man手册共有以下几个章节:

章节 名称 描述
1 Standard commands(标准命令) Executable programs or shell commands, 普通的命令
2 System calls(系统调用) System calls (functions provided by the kernel)系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
3 Libraryfunctions(库函数) Library calls (functions within program libraries), 库函数,如printf,fread
4 Specialdevices(设备说明) Special files (usually found in /dev), 特殊文件,也就是/dev下的各种设备文件
5 File formats(文件格式) File formats and conventions eg /etc/passwd, 指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
6 Games andtoys(游戏和娱乐) 给游戏留的,由各个游戏自己定义
7 Miscellaneous(杂项) Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7),附件还有一些变量,比如向environ这种全局变量在这里就有说明
8 AdministrativeCommands(管理员命令) System administration commands (usually only for root), 系统管理用的命令,这些命令只能由root使用,如ifconfig
9 Kernel routines [Non standard]

 

Man手册的安装

说明: 本文用的操作系统是CentOS。

执行以下命令:

yum install man
yum install man-pages-zh-CN.noarch

说明: 如果安装失败,则执行yum -y update更新安装包。

 

环境变量配置

我们前面安装了中英文的man包, 可以通过设置中英文显示语言来设定其显示。

  • 如果你的终端是英文,则会显示英文的man手册。

  • 如果你的终端是中文,则会显示中文的man手册。

所以可以通过设置中英文来设置其显示,可以在~/.bashrc中设置。

如果希望终端是英文:

# english
LANG="en_US.UTF-8"
LANGUAGE="en_US:en"

如果希望终端是中文:

# chinese
LANG="zh_CN.UTF-8"
LANGUAGE="zh_CN:zh"

但是中文翻译的不太好, 我们多数情况下还是希望使用英文的, 而更改环境变量的方式总是很麻烦, 有什么方式可以一劳永逸呢。

我们可以使用-M选项指定man手册,比如使用man -M /usr/share/man/zh_CN/ 2 read就可以使用中文手册查看read系统调用。

下面有两种配置方案:

  1. 如果你希望终端是中文的,那么需要在~/.bashrc中添加以下代码:

    # chinese
    LANG="zh_CN.UTF-8"
    LANGUAGE="zh_CN:zh"
    alias eman='man -M /usr/share/man/'
    

    那么使用man指令可以查看中文man手册,使用eman指令可以查看英文man手册。

  2. 如果你希望终端是英文的,那么需要在~/.bashrc中添加以下代码:

    # english
    LANG="en_US.UTF-8"
    LANGUAGE="en_US:en"
    alias cman='man -M /usr/share/man/zh_CN/'
    

    那么使用man指令可以查看英文man手册,使用cman指令可以查看中文man手册。

我使用的是方案1,下图为效果图:

完整指南:如何安装Man手册

注意: 这里还有一个问题,你会发现你如果man 2 getpid,会找不到这个系统调用,缘由就在于系统中没有安装彻底联机手册,解决方案:在命令行输入如下命令:yum install man-pages便可。

 

Man手册的使用

  1. 可以使用man 手册名称,但是对于有些名称可能存在于多个章节。

  2. 当名称存在于多个章节时,使用命令man 章节号 手册名称来指定某个章节。

    我们可以使用man -f 手册名称来查看命令所在章节。