linux man 命令 詳解
剛接觸linux的時候,都會使用man來查閱一些命令的幫助資訊。但是也都只是使用"man
命令名稱"這樣簡單的格式。其實,man還有不少其他小技巧,在這和大家分享一下。
1
當你列出write時,它可能代表了Linux裡的使用者命令或系統呼叫,如果我只是想了解write這個系統呼叫的作用,而對write命令的命令格式沒有興趣,那麼我該如何告訴man呢?
man命令後面可以加一個數字引數,表示具體的範圍定位:
數字"1"表示使用者命令
數字"2"表示系統呼叫
數字"3"表示C語言庫函式
數字"4"表示裝置或特殊檔案
數字"5"表示檔案格式和規則
數字"6"表示遊戲及其他
數字"7"表示巨集、包及其他雜項
數字"8"表示系統管理員相關的命令
知道了這些,我就可以用man 2 write來檢視關於write系統呼叫的幫助資訊了。
再舉幾個例子,比如你man
named,你觀察螢幕左上角會發現NAMED(8)的字樣,這就說明這個named是包含在"系統管理員相關的命令"之中的。
再比如man yum.conf,你會發現yum.conf(5)
,我想你現在應該知道它的寓意了。下次你可以直接man
5再加一個配置檔案,來查查這個檔案的配置方法了。
2
給大家推薦一個man的非常好的網站,
page!
3 我的這些man資訊都存在Linux系統的哪裡?
[[email protected] ~]# manpath
/usr/kerberos/man:/usr/local/share/man:/usr/share/man/en:/usr/share/man
用manpath命令就可以看到了,當你man的時候,man會到如上這些路徑去尋找對應的幫助資訊。如果沒有的話,那麼man會抱怨:
[[email protected] ~]# man rocrocket
No manual entry for rocrocket
呵呵
4 如何重新建立man的資料庫?
使用makewhatis命令就可以!
5 既然有man資料庫,我是否可以像搜尋引擎那樣搜出裡面的關鍵字?
可以。這樣做:
$man -k roc
使用man的-k選項,就可以列出所有包含roc字串的man幫助資訊。
其實,更深一步,man -k和apropos命令作用相同。你完全可以用apropos
roc來代替man -k roc。
其實apropos是一個指令碼檔案,它不是ELF可執行檔案。所以你完全可以用vi
/usr/bin/apropos看看它到底是如何實現