Linux 自帶的幫助命令是最準(zhǔn)確、最可靠的資料。筆者不止一次發(fā)現(xiàn)通過(guò)其他途徑搜索到的信息都不準(zhǔn)確,甚至是錯(cuò)誤的。所以,雖然 Linux 自帶的幫助命令是英文的,但是我們要靜下心來(lái)慢慢學(xué)習(xí)。
這就是 man 命令的基本使用方法,非常簡(jiǎn)單。但是幫助命令的重點(diǎn)不是命令如何使用,而是幫助信息應(yīng)該如何使用。這些信息較多,我們通過(guò)下面一小節(jié)來(lái)詳細(xì)講解。
雖然不同命令的 man 信息有一些區(qū)別,但是每個(gè)命令 man 信息的整體結(jié)構(gòu)皆如演示這樣。在幫助信息中,我們主要査看的就是命令的格式和選項(xiàng)的詳細(xì)作用。
不過(guò)大家請(qǐng)主意,在 man 信息的最后,可以看到還有哪些命令可以查看到此命令的相關(guān)信息。這是非常重要的提示,不同的幫助信息記錄的側(cè)重點(diǎn)是不太一樣的。所以,如果在 man 信息中找不到想要的內(nèi)容,則可以嘗試看其他相關(guān)幫助命令。
不知道大家有沒(méi)有注意到,在執(zhí)行 man 命令時(shí),命令的開(kāi)頭會(huì)有一個(gè)數(shù)字標(biāo)識(shí)這個(gè)命令的幫助級(jí)別。例如:
[root@localhost -]# man ls
LS(1) User Commands LS(1)
#這里(1)就表示這是 ls 的 1 級(jí)別的幫助信息
這些命令的級(jí)別號(hào)代表什么含義呢?我們通過(guò)表來(lái)說(shuō)明
級(jí) 別 |
作 用 |
1 |
普通用戶(hù)可以執(zhí)行的系統(tǒng)命令和可執(zhí)行文件的幫助 |
2 |
內(nèi)核可以調(diào)用的函數(shù)和工具的幫助 |
3 |
C語(yǔ)言函數(shù)的幫助 |
4 |
設(shè)備和特殊文件的幫助 |
5 |
配置文件的幫助 |
6 |
游戲的幫助(個(gè)人版的Linux中是有游戲的) |
7 |
雜項(xiàng)的幫助 |
8 |
超級(jí)用戶(hù)可以執(zhí)行的系統(tǒng)命令的幫助 |
9 |
內(nèi)核的幫助 |
我們來(lái)試試,ls 命令的幫助級(jí)別是 1,我們已經(jīng)看到了。那么我們找一個(gè)只有超級(jí)用戶(hù)才能執(zhí)行的命令,如 useradd 命令(添加用戶(hù)的命令),來(lái)看看這個(gè)命令的幫助:
[root@localhost ~]# man useradd U
SERADD(8) System Management Commands USERADD(8)#我們可以看到,默認(rèn)useradd命令的幫助級(jí)別是8,因?yàn)檫@是只有超級(jí)用戶(hù)才可以執(zhí)行的命令命令擁有哪個(gè)級(jí)別的幫助可以通過(guò)"-f"選項(xiàng)來(lái)進(jìn)行査看。例如:
[root@localhost -]# man -f ls
ls(1) - list directory contents
#可以看到ls命令只擁有1級(jí)別的幫助
ls 是一個(gè)比較簡(jiǎn)單的 Linux 命令,所以只有 1 級(jí)別的幫助。我們?cè)贃丝匆幌?passwd 命令(給用戶(hù)設(shè)定密碼的命令)的幫助:
[root@localhost ~]# man -f passwd
passwd (1) - update user's authentication tokens#passwd命令的幫助
passwd (5) - password file
#passwd配置文件的幫助
passwd[sslpasswd] (1ssl) - compute password hashes#這里是SSL的passwd的幫助,和passwd命令并沒(méi)有太大關(guān)系passwd 是一個(gè)比較復(fù)雜的命令,而旦這個(gè)命令有一個(gè)相對(duì)比較復(fù)雜的配置文件 /etc/passwd。所以系統(tǒng)既給出了 passwd 命令的幫助,也給出了 /etc/passwd 配置文件的幫助。大家可以使用如下命令查看:
[root@localhost ~]# man 1 passwd
#查看passwd命令的幫助
[root@localhost ~]# man 5 passwd
#查看/etc/passwd配件的幫助
至于 useradd 和 passwd 命令,我們會(huì)在后續(xù)章節(jié)中詳細(xì)講解,這里只是用這個(gè)例子說(shuō)明 man 命令的不同幫助級(jí)別。
man 命令還有一個(gè)"-k"選項(xiàng),它的作用是査看命令名中包含指定字符串的所有相關(guān)命令的幫助。例如:
[root@localhost ~]# man -k useradd
luseradd(1) - Add an user
useradd(8) - create a new user or update default new user informationuseradd [adduser] (8) - create a new user or update default new user informationuseradd_selinux (8) -Security Enhanced Linux Policy for the useradd processes#這條命令會(huì)列出系統(tǒng)中所有包含useradd字符串的命令,所以才會(huì)找到一些包含"useradd"字符串,但是和我們要査找的useradd無(wú)關(guān)的命令。
如果我們使用"man-k ls"命令,則會(huì)發(fā)現(xiàn)輸出內(nèi)容會(huì)多出幾頁(yè),那是因?yàn)楹芏嗝钪卸及?quot;ls"這個(gè)關(guān)鍵字。這條命令適合你只記得命令的幾個(gè)字符,用來(lái)査找相關(guān)命令的情況。
在系統(tǒng)中還有兩個(gè)命令。
whatis:這個(gè)命令的作用和 man -f 是一致的。
apropos:這個(gè)命令的作用和 man -k 是一致的。
不過(guò)這兩個(gè)命令和 man 基本一致,所以了解就好。不過(guò) Linux 的命令很有意思,想知道這個(gè)命令是干什么的,可以執(zhí)行 whatis 命令;想知道命令在哪里,可以執(zhí)行 whereis 命令;想知道當(dāng)前登錄用戶(hù)是誰(shuí),可以執(zhí)行 whoami 命令。
如果執(zhí)行以上兩個(gè)命令報(bào)錯(cuò),那是因?yàn)?whatis 數(shù)據(jù)庫(kù)沒(méi)有建立。只要手工執(zhí)行以下命令,重新建立 whatis 數(shù)據(jù)庫(kù)即可。
》》》更多的關(guān)于linux培訓(xùn)知識(shí),歡迎隨時(shí)咨詢(xún)傳智播客網(wǎng)站右下側(cè)咨詢(xún)窗口《《《