神奇高效的Linux命令行

  神奇高效的Linux命令行

  一、爲什麼要學linux命令

  Linux是由命令行組成的操作系統,精髓在命令行,無論圖形界面發展到什麼水平,命令行方式的操作永遠是不會變的。Linux命令有許多強大的功能:從簡單的磁盤操作、文件存取,到進行復雜的多媒體圖像和流媒體文件的製作,都離不開命令行。雖然Linux也有桌面系統,但是X-window也只是運行在命令行模式下的一個應用程序。

  因此,可以說命令是學習Linux系統的基礎,在很大程度上學習Linux就是學習命令,很多Linux高手其實都是玩兒命令很熟練的人。

  也許對於剛剛從Windows系統進入Linux學習的初學者來說,立刻進入枯燥的命令學習實在太難,但是一旦學會就愛不釋手。因爲它的功能實在太強大了。

  有很多初學者都會遇到這麼一個問題,自己對系統的每個命令都很熟悉,但是在系統出現故障的時候,就無從下手了,甚至不知道在什麼時候用什麼命令去檢查系統,這是很多Linux新手最無奈的事情了。說到底,就是學習的理論知識沒有很好地與系統實際操作相結合。

  很多Linux知識,例如每個命令的參數含義,在書本上說得很清楚,看起來也很容易理解,但是一旦組合起來使用,卻並不那麼容易,沒有多次的動手練習,其中的技巧是無法完全掌握的。

  人類大腦不像計算機的硬盤,除非硬盤壞掉或者硬盤被格式化,否則儲存的資料將永遠記憶在硬盤中,而且時刻可以調用。而在人類記憶的曲線中,必須要不斷地重複練習纔會將一件事情記得比較牢。學習Linux也一樣,如果無法堅持學習的話,就會學了後面的,忘記了前面的。還有些Linux初學者也學了很多Linux知識,但是由於長期不用,導致學過的東西在很短的時間內又忘記了,久而久之,失去了學習的信心。

  可見,要培養自己的實戰技能,只有勤於動手,肯於實踐,這也是學好Linux的根本。

  遇到問題,首先想到的應該是如何自己去解決這個問題,解決方式有很多,比如看書查資料、網絡搜索引擎搜索和瀏覽技術論壇等,通過這幾種方式,90%的問題都能得到解決。

  獨立思考並解決問題,不但鍛鍊了自己獨立解決問題的能力,在技術上也能得到快速提高。如果通過以上方式實在解決不了的話,可以向人詢問,得到答案後要思考爲何這麼做,然後做筆記記錄解決過程。最忌諱的方式是隻要遇到問題,就去問人,雖然這樣可能會很快解決問題,但是長久下去遇到問題就會依賴別人,技術上也不會進步。

  二、shell真的很重要

  shell的本意是“殼”的意思,其實已經很形象地說明了shell在Linux系統中的作用。shell就是圍繞在Linux內核之外的一個“殼”程序,用戶在操作系統上完成的所有任務都是通過shell與Linux系統內核的交互來實現的。我們應該熟悉DOS系統中command.com程序,shell的功能與此類似,但是shell的功能更加強大,更加好用。

  各種操作系統都有自己的shell。以DOS爲例,它的shell就是command.com程序。DOS下還出現了很多第三方命令解釋程序,例如4DOS、NDOS等,這些命令解釋程序完全可以取代標準的command.com程序。同樣,Linux下除了默認的Bourne again shell(bash),還有很多其他的shell,例如C shell(csh)、Korn shell(ksh)、Bourne shell(sh)和Tenex C shell(tcsh)等。每個版本的shell功能基本相同,但各有千秋,現在的Linux系統發行版一般都以bash作爲默認的shell。

  shell本身是一個C語言編寫的程序,是用戶和操作系統內核之間通信的橋樑。shell既是一種命令解釋程序,又是一種功能強大的解釋型程序設計語言。作爲命令解釋程序,shell解釋用戶輸入的命令,然後提交到內核處理,最後把結果返回給用戶。

  爲了加快命令的運行,同時更有效地定製shell程序,shell中定義了一些內置的命令,一般我們把shell自身解釋執行的命令稱爲內置命令,例如下面我們將要講到的cd、pwd、exit和echo等命令,都是屬於bash的內置命令。當用戶登錄系統後,shell以及內置命令就被系統載入到內存,並且一直運行,直到用戶退出系統爲止。除了內置命令,Linux系統上還有很多可執行文件。可執行文件類似於Windows下的.exe文件,這些可執行文件也可以作爲shell命令來執行。其實Linux上很多命令都不是shell的內置命令,例如ls就是一個可執行文件,存放在/bin/ls中。這些命令與shell內置命令不同,只有當它們被調用時,才由系統裝入內存執行。

  當用戶登錄系統後,如果是登錄字符界面,將出現shell命令提示符。“#”表示登錄的用戶是系統超級用戶,“*”表示登錄到系統的是普通用戶。shell執行命令解釋的具體過程爲:用戶在命令行輸入命令提交後,shell程序首先檢測是否爲內置命令,如果是,就通過shell內部的解釋器將命令解釋爲系統調用,然後提交給內核執行;如果不是shell內置的命令,那麼shell會按照用戶給出的路徑或者根據系統環境變量的配置信息在硬盤尋找對應的命令,然後將其調入內存,最後再將其解釋爲系統調用,提交給內核執行。

  最後shell還是強大的解釋型程序設計語言,它定義了各種選項和變量,幾乎支持高級程序語言的所有程序結構,例如變量、函數、表達式和循環等。利用shell可以編寫shell腳本程序,類似於Windows/DOS下的批處理文件,但是shell功能更加完善,更加強大。
瀋陽包皮醫院××× http://www.25259999.com/
 瀋陽×××醫院哪家比較好 http://www.024sysdnk.com/
 瀋陽那家醫院看×××比較好 http://www.sysdnk.com/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章