Linux Man手册的使用示例

 Linux的命令非常多,很多人在学一个命令时,首先想到的是使用百度或者谷歌,或者参考书上给出怎么使用的例子。但授人以鱼不如授人以渔,通过man该命令可以得到关于该命令的有用信息。当我们学会使用man文档时,将大大提升使用命令的能力。这里,本人认为更多人是不知道列出的选项怎么用,有什么规律,导致不想使用man。为此,本文通过mkdir命令文档做一个示例,希望对读者们有所帮助。

一、man命令

    对于man,将各类命令分为9个板块:

板块 含义
1 可执行文件或者shell命令
2 系统调用(内核提供的函数)
3 库函数
4 特别的文件(通常在/dev)
5 文件格式,如/etc/passwd
6 游戏
7 杂项(包括宏包)
8 系统管理员命令(通常给root用户使用)
9 内核例程(非标准例程)

    那么,这部分和我们有什么关系呢?事实上,当我们man一个命令的时候,默认会从这些模块中查找,但找到的可能不是我们想要的。例如

man mkdir

    得到: 
这里写图片描述 
    我们确实得到了mkdir命令的帮助文档。但是如果我要查询mkdir这个系统调用呢?这时就不是我想要的了。从上面表格,可以知道系统调用是在第二部分,这时就要用如下命令:

man 2 mkdir

这里写图片描述 
    这时看到的是MKDIR(2),表示是系统调用这个板块的。要知道,man在没有指定板块时,将使用一种默认的顺序查找这些板块中的命令,只返回含有该命令的第一个文档。当指定板块时,只从该板块中查找。所以,当我们man得不到想要的文档时,就要给出板块号了。 
    下面,我们来对剩余的一些板块的命令举一个例子。

man 3 fread

这里写图片描述

man 4 tty

这里写图片描述

man 5 passwd

这里写图片描述 
    这时展示的是/etc/passwd的格式。

二、man mkdir

    这里以man mkdir为例,解释这个文档里面的内容。为了方便,这里对所有非空行添加了行号。

       1    MKDIR(1)                            User Commands                            MKDIR(1)



     2  NAME
     3         mkdir - make directories

     4  SYNOPSIS
     5         mkdir [OPTION]... DIRECTORY...

     6  DESCRIPTION
     7         Create the DIRECTORY(ies), if they do not already exist.

     8         Mandatory arguments to long options are mandatory for short options too.

     9         -m, --mode=MODE
    10                set file mode (as in chmod), not a=rwx - umask

    11         -p, --parents
    12                no error if existing, make parent directories as needed

    13         -v, --verbose
    14                print a message for each created directory

    15         -Z     set  SELinux  security context of each created directory to the default
    16                type

    17         --context[=CTX]
    18                like -Z, or if CTX is specified then set the SELinux or SMACK  security
    19                context to CTX

    20         --help display this help and exit

    21         --version
    22                output version information and exit

    23  AUTHOR
    24         Written by David MacKenzie.

    25  REPORTING BUGS
    26         GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
    27         Report mkdir translation bugs to <http://translationproject.org/team/>

    28  COPYRIGHT
    29         Copyright  © 2014 Free Software Foundation, Inc.  License GPLv3+: GNU GPL ver‐
    30         sion 3 or later <http://gnu.org/licenses/gpl.html>.
    31         This is free software: you are free to change and redistribute it.   There  is
    32         NO WARRANTY, to the extent permitted by law.

    33  SEE ALSO
    34         mkdir(2)

    35         Full documentation at: <http://www.gnu.org/software/coreutils/mkdir>
    36         or available locally via: info '(coreutils) mkdir invocation'



    37  GNU coreutils 8.23                  November 2014                            MKDIR(1)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58

2.1 man命令文档的构成

    可以看出,文档有几个部分:

部分 解释
NAME 命令的名字
SYNOPSIS 命令的格式
DESCRIPTION 语法,主要是一些选项
AUTHOR 命令的作者
REPORTING BUGS 报告bug的链接
COPYRIGHT 版权
SEE ALSO 更多参考

    一般情况下还可能有其他部分,如EXAMPLES,会给出示例。首先,来看看第5行:

mkdir [OPTION]… DIRECTORY…

    这一行定义了命令的使用格式。[]表示可选,也就是可以添加OPTION,也可以不用添加OPTION。而DIRECTORY不可以缺少,必须至少有一个。…表示可以有多个。如: 
a. 无选项,一个DIRECTORY

mkdir mk1

b. 无选项,两个DIRECTORY

mkdir mk2 mk3

c. 两个选项,两个DIRECTORY

mkdir -m 775 -p mk4/tmp mk5

结果: 
这里写图片描述

2.2 参数的使用

    接着看第8行:

Mandatory arguments to long options are mandatory for short options too.

    这句话的意思是:对于长选项必不可少的参数对短选项来说也是必不可少的。 
    通常一个选项可以用-开头,给出首个字母,这时是短选项。也可以用–开头,给出全名,这时是长选项。如第9行:

-m, –mode=MODE

    表示既可以用-m这个短选项,也可以用–mode这个长选项。

    另外,后面有一个参数MODE,这个参数是指定被创建目录的权限,而且这个参数是必不可少的,因为没有加[]。这时的用法是-m MODE 或者–mode=MODE。但对于短选项来说,在-m MODE之间的空格一般可以去掉,即变成-mMODE。 
这里写图片描述 
    不管哪种情况,MODE这个参数不能去掉。上面提示丢失了参数,出错。

2.3 使用剩余的选项

    剩余的选项类似上面的情况,使用示例如下: 
这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ac_dao_di/article/details/54718710

 Linux的命令非常多,很多人在学一个命令时,首先想到的是使用百度或者谷歌,或者参考书上给出怎么使用的例子。但授人以鱼不如授人以渔,通过man该命令可以得到关于该命令的有用信息。当我们学会使用man文档时,将大大提升使用命令的能力。这里,本人认为更多人是不知道列出的选项怎么用,有什么规律,导致不想使用man。为此,本文通过mkdir命令文档做一个示例,希望对读者们有所帮助。

一、man命令

    对于man,将各类命令分为9个板块:

板块 含义
1 可执行文件或者shell命令
2 系统调用(内核提供的函数)
3 库函数
4 特别的文件(通常在/dev)
5 文件格式,如/etc/passwd
6 游戏
7 杂项(包括宏包)
8 系统管理员命令(通常给root用户使用)
9 内核例程(非标准例程)

    那么,这部分和我们有什么关系呢?事实上,当我们man一个命令的时候,默认会从这些模块中查找,但找到的可能不是我们想要的。例如

man mkdir

    得到: 
这里写图片描述 
    我们确实得到了mkdir命令的帮助文档。但是如果我要查询mkdir这个系统调用呢?这时就不是我想要的了。从上面表格,可以知道系统调用是在第二部分,这时就要用如下命令:

man 2 mkdir

这里写图片描述 
    这时看到的是MKDIR(2),表示是系统调用这个板块的。要知道,man在没有指定板块时,将使用一种默认的顺序查找这些板块中的命令,只返回含有该命令的第一个文档。当指定板块时,只从该板块中查找。所以,当我们man得不到想要的文档时,就要给出板块号了。 
    下面,我们来对剩余的一些板块的命令举一个例子。

man 3 fread

这里写图片描述

man 4 tty

这里写图片描述

man 5 passwd

这里写图片描述 
    这时展示的是/etc/passwd的格式。

二、man mkdir

    这里以man mkdir为例,解释这个文档里面的内容。为了方便,这里对所有非空行添加了行号。

       1    MKDIR(1)                            User Commands                            MKDIR(1)



     2  NAME
     3         mkdir - make directories

     4  SYNOPSIS
     5         mkdir [OPTION]... DIRECTORY...

     6  DESCRIPTION
     7         Create the DIRECTORY(ies), if they do not already exist.

     8         Mandatory arguments to long options are mandatory for short options too.

     9         -m, --mode=MODE
    10                set file mode (as in chmod), not a=rwx - umask

    11         -p, --parents
    12                no error if existing, make parent directories as needed

    13         -v, --verbose
    14                print a message for each created directory

    15         -Z     set  SELinux  security context of each created directory to the default
    16                type

    17         --context[=CTX]
    18                like -Z, or if CTX is specified then set the SELinux or SMACK  security
    19                context to CTX

    20         --help display this help and exit

    21         --version
    22                output version information and exit

    23  AUTHOR
    24         Written by David MacKenzie.

    25  REPORTING BUGS
    26         GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
    27         Report mkdir translation bugs to <http://translationproject.org/team/>

    28  COPYRIGHT
    29         Copyright  © 2014 Free Software Foundation, Inc.  License GPLv3+: GNU GPL ver‐
    30         sion 3 or later <http://gnu.org/licenses/gpl.html>.
    31         This is free software: you are free to change and redistribute it.   There  is
    32         NO WARRANTY, to the extent permitted by law.

    33  SEE ALSO
    34         mkdir(2)

    35         Full documentation at: <http://www.gnu.org/software/coreutils/mkdir>
    36         or available locally via: info '(coreutils) mkdir invocation'



    37  GNU coreutils 8.23                  November 2014                            MKDIR(1)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58

2.1 man命令文档的构成

    可以看出,文档有几个部分:

部分 解释
NAME 命令的名字
SYNOPSIS 命令的格式
DESCRIPTION 语法,主要是一些选项
AUTHOR 命令的作者
REPORTING BUGS 报告bug的链接
COPYRIGHT 版权
SEE ALSO 更多参考

    一般情况下还可能有其他部分,如EXAMPLES,会给出示例。首先,来看看第5行:

mkdir [OPTION]… DIRECTORY…

    这一行定义了命令的使用格式。[]表示可选,也就是可以添加OPTION,也可以不用添加OPTION。而DIRECTORY不可以缺少,必须至少有一个。…表示可以有多个。如: 
a. 无选项,一个DIRECTORY

mkdir mk1

b. 无选项,两个DIRECTORY

mkdir mk2 mk3

c. 两个选项,两个DIRECTORY

mkdir -m 775 -p mk4/tmp mk5

结果: 
这里写图片描述

2.2 参数的使用

    接着看第8行:

Mandatory arguments to long options are mandatory for short options too.

    这句话的意思是:对于长选项必不可少的参数对短选项来说也是必不可少的。 
    通常一个选项可以用-开头,给出首个字母,这时是短选项。也可以用–开头,给出全名,这时是长选项。如第9行:

-m, –mode=MODE

    表示既可以用-m这个短选项,也可以用–mode这个长选项。

    另外,后面有一个参数MODE,这个参数是指定被创建目录的权限,而且这个参数是必不可少的,因为没有加[]。这时的用法是-m MODE 或者–mode=MODE。但对于短选项来说,在-m MODE之间的空格一般可以去掉,即变成-mMODE。 
这里写图片描述 
    不管哪种情况,MODE这个参数不能去掉。上面提示丢失了参数,出错。

2.3 使用剩余的选项

    剩余的选项类似上面的情况,使用示例如下: 
这里写图片描述

猜你喜欢

转载自blog.csdn.net/tr_ainiyangyang/article/details/80967550