轉自:http://blog.sina.com.cn/s/blog_532f78a40100rn9y.html
剛接觸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的非常好的網站,http://www.linuxmanpages.com/,在這裏有非常全的Linux的man信息,你可以分1-8來查看相應的manual
page!
3 我的這些man信息都存在Linux系統的哪裏?
[root@wupengchong ~]# manpath
/usr/kerberos/man:/usr/local/share/man:/usr/share/man/en:/usr/share/man
用manpath命令就可以看到了,當你man的時候,man會到如上這些路徑去尋找對應的幫助信息。如果沒有的話,那麼man會抱怨:
[root@wupengchong ~]# 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看看它到底是如何實現