前言: Linux是一款精巧好用的作業系統,但是因為其出自一批工程師之手,其操作方式并不是大衆喜聞樂見的圖形化界面為主流,在Linux中,指令行模式才是最佳操作方式。是以,熟悉Linux常用指令就成為熟練使用Linux必須經過的一段路程。本文就常用的Linux指令作一簡介,友善起見,用Linux作業系統進行示範,但這些指令均可在Linux指令行模式實作。
(一)
本文采用OEL6.5作為實驗平台,并預先添加了一個名為oracle的使用者,主機名為host.domain。
開機後會出現下圖界面,直接回車或滑鼠左擊并輸入密碼代表以oracle使用者進入Linux(圖1.1),點選Other可以自己輸入使用者名和密碼進入Linux,本文以root使用者登入Linux(圖1.2)。

圖1.1 Linux登入界面
圖1.2 root使用者登入Linux
登入Linux後出現的圖形化界面如圖1.3所示:
圖1.3 Linux圖形化界面
進入Linux圖形化界面之後,我們可以在桌面上的空白處右擊,出現如下圖1.4的提示:
圖 1.4
選擇 Open in Terminal,就會出現下圖所示的一個終端,在這裡面我們與Linux核心互動,至于互動的方式,自然就是指令行喽。
圖 1.5
在圖1.5中,各項的意義如下:
root:使用者名,顯示目前登入系統的使用者
@:分隔符,起分隔作用
host:短主機名,在本例中,主機名為host.domain,短主機名就是符号“.”前面的部分
Desktop:目前目錄,即現在使用者所處的目錄,此處為Desktop
#:辨別符,一般情況下,以root使用者登入時為#,以普通使用者則為$
(二)
2.1 元指令( 關于指令的指令)
工欲善其事,必先利其器。Linux指令衆多,除非記憶力超強,否則總有遇到不熟悉的指令的時候,這個時候最快捷的方法并不是去搜尋引擎搜尋該指令的用法,而是應該利用Linux自帶的手冊對該指令進行查詢,一般該指令的所有參數和用法都會在其中較長的描述。當然該手冊全英文,可見英文對于熟練操作Linux系統來說不可或缺。那麼怎麼使用該手冊呢?使用該手冊的指令關鍵字就是man(手冊英文manual的前三個字母)。
關于man最簡單的文法就是 “ man 想要查詢的指令”,在終端一回車之後就能出現關于該指令的詳細介紹,例如查詢指令 su的具體用法:
先在終端輸入 man su,就像下圖:
圖 2.1
立馬就會出現下圖的畫面:
圖 2.2
然後可以一直向下翻頁,直到末尾,要退出也很容易,一個小寫的“q”就可以傳回到圖2.1的互動模式。這是最基本的關于man用法的介紹,man的用法還有更多,該怎麼知道呢?當然還是man啦,即輸入 “ man man”,或者也可以去看看《鳥哥的Linux私房菜》這本書,介紹的很到位,已經有三個版本了。http://vbird.dic.ksu.edu.tw/ 這是鳥哥的網址。
2.2 切換使用者指令: su
Linux初學者使用Linux時總會遇到權限問題,或者偶爾不小心進錯了使用者(真的有),這個時候如果先退出目前使用者再登入進行操作就太麻煩了,一條指令就可以簡簡單單的解決,那就是 su。
目前使用者為root:
圖 2.3
切換到已有的oracle使用者:指令為 su - oracle(均以空格隔開,中間的符号即減号,減号也可以省略,但是有差別,見下文)
圖 2.4
再将oracle使用者切回到root使用者: su -(沒錯,不需要加上root,當然也可以輸入 su - root)
圖 2.5
由圖2.5可知,從root使用者切換到普通使用者,是不需要密碼驗證的,而從普通使用者切換到root使用者,必須進行密碼驗證,如果切換到不存在的使用者,系統會提示該使用者不存在。那麼在普通使用者間切換需要密碼驗證嗎?讀者可以自行嘗試。
注意:su - root和su -:su - root is same as su - ; just like login as root, then the shell is login shell, which mean it will expericene just like login as root, then a login process, usually .bash_profile and .bashrc will be sourced.
su root 和 su :su root is same as su; like you open an interactive shell in root name, then only.bashrc will be sourced.
su 和 su - 的差別:su是不更改環境變量的;而su -是要更改環境變量的。也就是說su隻是獲得了root的權限,su -是切換到root并獲得root的環境變量及執行權限。 (引用自http://wenku.baidu.com/link?url=qbHYh2xpuDZRi0lH49_JnozcErZMG_lHQprFtRmE64W9XSATWcCzJDnepUCmKtK8Gf57YypmGdy5nm8w3cIzIRsVHpOai1Y5CFX02s6ULxC)
2.3 檢視檔案和目錄:ls、cat、more、tail、less、head
ls:清單(list)顯示目錄内容
文法:ls [選項]... [目錄或檔案名]
幾個常用參數及含義:
ls :檢視目錄中的檔案 ls -F: 檢視目錄中的檔案
圖 2.6
似乎二者差別并不大,除了 -F能夠更清楚的看清哪些是目錄以外(如果有人知道更詳細請指教\(^o^)/)
ls -l :顯示檔案和目錄的詳細資料 還有一個 ll,二者同義
圖 2.7
ls -a: 顯示所有子目錄和檔案的資訊,包括隐藏檔案
圖 2.8
出現了很多以"."開頭的隐藏檔案。其中的"."和"..",後續介紹。
cat:顯示出檔案的全部内容,當檔案内容較多時,使用cat指令往往隻能看到檔案的最後一部分内容,而無法分頁逐屏顯示,需要使用另外兩個指令:more和less。
more:全屏方式分頁顯示檔案内容
less:與more指令相同,但擴充功能更多
head:檢視檔案開頭的一部分内容(預設為10行)
tail:檢視檔案結尾的少部分内容(預設為10行)
在root的~下建立一個名為”test“的檔案,内容如下:
圖 2.9
cat顯示test:
圖 2.10
more顯示test:互動操作方法:按Enter鍵向下逐行滾動,按空格鍵向下翻一屏,按b鍵向上翻一屏,按q鍵退出。(用于一個螢幕無法完整顯示整個内容的檔案)
圖 2.11
less顯示test:互動操作方法:與more基本類似,但個别操作會有出入。more指令結合管道操作使用時(例如:ls -R /etc | more)無法向翻頁,但less指令可以。在分頁閱讀界面中,到檔案末尾時more指令會自動退出,less指令不會。下圖的最後test(END)就是,需要按q退出。
圖 2.12
head顯示test:
圖 2.13
tail 顯示test:
圖 2.14
以上均為抛磚引玉,上面介紹的這些指令其實有更多的關鍵字和各種奇妙的用法,大家可以去man一探究竟,如有表述錯誤,敬請指正。