安裝好了Unix/Linux類操作系統(tǒng),卻不知道拿它做點什么、也不知道它能做些什么……這是大多數(shù)初這朋友的疑惑。
我認(rèn)為首先要做的是學(xué)會如何在Unix/Linux下獲得知識,掌握學(xué)習(xí)方法。如何真有一天你要用Linux來做點什么時覺得孤立無助,你一定要學(xué)會用man命令。
man是什么?
首先在命令行輸入man man回車看一下吧。把NAME和DESCRIPTION那兩段英文看完了你就明白了。man是顯示Unix/Linux的在線手冊的命令。
典型情況下,man是用來查看一些命令、函數(shù)或文件的幫助手冊的,另外它還可以顯示一些gzip壓縮格式的文件。
Unix/Linux的在線手冊是什么?
一般情況下Linux下所有資源都會隨操作系統(tǒng)一起發(fā)行,包括內(nèi)核源代碼。而在線手冊是操作系統(tǒng)所有資源的一本很好的使用手冊。你有不懂的命令時可以man一下這個命令,寫程序時有不會用的函數(shù)時可以man一下該函數(shù),甚至你不懂某個文件時都可以man一下這個文件(當(dāng)然,這個文件一般來說是系統(tǒng)用到的一個配置文件或某個系統(tǒng)服務(wù)用到的配置文件)。
man手冊資源的位置
一般情況下man的資源主要位于/usr/share/man目錄下面。但如果你仔細(xì)看了man man的結(jié)果,并且對man.config也感興趣并且man man.config過后,你就會明白其位置是由MANPATH變量決定的,你可以more /etc/man.config來看有哪些地方有man內(nèi)容的位置。
單個man資源內(nèi)容的組成
一般來說,man內(nèi)容會分為NAME、SYNOPSIS、DESCRIPTION、OPTIONS、SEE ALSO、BUGS等部分。NAME是該內(nèi)容的一個簡單說明(一般是一句話給個定義似的);SYNOPSIS是大致說明,對于命令來說是命令的語法,對于函數(shù)來說是函數(shù)的定義;DESCRIPTION是該內(nèi)容的一個簡明介紹,讓你對你查的內(nèi)容大致有個印象;OPTIONS是在查詢命令時的命令參數(shù)的詳細(xì)解釋;SEE ALSO是給你一些提示,相當(dāng)于介紹你一些參考內(nèi)容;BUGS是指明該命令或函數(shù)存在什么BUG,提醒你防止出現(xiàn)。
man資源的組成
有很多朋友說man資源分為8章,我覺得這只是說了主要部分,你ls /usr/share/man看一下就知道了,有man1、man2……man7、man8這樣8個目錄存在呢,但除了這之外還有其它的目錄啊,何況還有其它的MANPATH規(guī)定的目錄呢。所以具體多少章不是固定的,但Linux下大致相同內(nèi)容的會歸在同一個目錄下,比如man1和man2目錄所在的大致是一些系統(tǒng)命令,而man3是編程時的一些函數(shù)的用法,man5是些配置文件手冊所在的目錄……同樣在/usr/X11R*/man目錄下也有一些目錄。具體是按什么來分目錄的呢?各人具體根據(jù)各目錄的內(nèi)容理解不同了。
man資源的使用技巧
1、如果你在MANPATH變量所設(shè)定的目錄(比如/usr/share/man/man1目錄)里看到一個ln.1.gz的文件,那么你就可以man ln來查看fileame到底是個什么命令了。
2、man的一般用法是man SECTION name,即在指定的章節(jié)(SECTION)里查看name命令或函數(shù)的用法。但如果你不知道某個命令或函數(shù)在哪一章,你可以man -a name這樣在所有MANPATH設(shè)定的地方查看name的手冊。默認(rèn)情況下man是顯示完第一個手冊頁后就會退出,如果有-a參數(shù)就會搜索所有的資源了。
3、如果你覺得在Linux下看太困難或者你英文不太好想要借助“XX詞霸”或“XX快譯”來幫忙,那么你可以先把man手冊存成文本文件然后ftp或samba共享到windows下打開來看吧。使用這么個命令就行了:
man man | col -bfp > man.txt
把man手冊生成了一個man.txt文件了,借助翻譯工具來看吧
4、編寫自己的man資源,如果你自己寫了一個非常好的函數(shù)或命令加到系統(tǒng)了,比如你寫了一個MyDate命令來顯示你需要的格式日期,那你也可以為你的MyDate命令來寫個手冊。很簡單,你編輯(用vi或其它任何文本編輯工具都可以)一個MyDate文件,里面是你的命令使用方法說明,然后用gzip MyDate命令把這手冊壓縮一下生成一個MyDate.gz,然后把這個文件copy到某個MANPATH指定的目錄,比如cp MyDate.gz /usr/share/man/man2,以后你就可以man MyDate來查看你的命令使用方法了。
5、安裝好一個Linux操作系統(tǒng)后能做什么呢?你要學(xué)系統(tǒng)管理?就把/usr/share/man1和/usr/share/man2目錄里的所有命令都man一下吧,都掌握了你絕對是系統(tǒng)管理專家了!想要學(xué)C編程?man一下gcc、g++、gdb等命令?;蛘吣鉲s一下各個bin目錄,比如/usr/bin、/bin、/sbin等,然后依次man一下你所看到的吧。
學(xué)習(xí)Linux最大的資源在你電腦上,如果你沒安裝,在你的光盤上一定有。想要學(xué)內(nèi)核嗎?趕快去看看/usr/src/linux*目錄下面的所有東西吧。