Linux Man手冊的使用示例


轉載自:https://blog.csdn.net/ac_dao_di/article/details/54718710

Linux的命令非常多,很多人在學一個命令時,首先想到的是使用百度或者谷歌,或者參考書上給出怎么使用的例子。但授人以魚不如授人以漁,通過man該命令可以得到關於該命令的有用信息。當我們學會使用man文檔時,將大大提升使用命令的能力。這里,本人認為更多人是不知道列出的選項怎么用,有什么規律,導致不想使用man。為此,本文通過mkdir命令文檔做一個示例,希望對讀者們有所幫助。

一、man命令   

 對於man,將各類命令分為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)

 

2.1 man命令文檔的構成    

可以看出,文檔有幾個部分:

  

    一般情況下還可能有其他部分,如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 使用剩余的選項   

   剩余的選項類似上面的情況,使用示例如下:

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM