(曾經有一段充足的時間放在我面前,可以學linux,而我沒有珍惜,等我失去的時候我才后悔莫及,人世間最痛苦的事莫過於此。)
最近,要將項目代碼部署到linux環境下運行,但是對linux毫無基礎,之前老聽說shell這個詞兒,也不知道啥意思,現在需要理解,就從晚上找了一個我覺得不錯的解釋,引用過來,以備后用!
(引自:https://zhidao.baidu.com/question/557066905.html)
【一】 shell的含義:
首先shell的英文含義是“殼”;
它是相對於內核來說的,因為它是建立在內核的基礎上,面向於用戶的一種表現形式,比如我們看到一個球,見到的是它的殼,而非核。
Linux中的shell,是指一個面向用戶的命令接口,表現形式就是一個可以由用戶錄入的界面,這個界面也可以反饋運行信息;
【二】shell在Linux中的存在形式:
由於Linux不同於Windows,Linux是內核與界面分離的,它可以脫離圖形界面而單獨運行,同樣也可以在內核的基礎上運行圖形化的桌面。
這樣,在Linux系統中,就出現了兩種shell表現形式,一種是在無圖形界面下的終端運行環境下的shell,另一種是桌面上運行的類似Windows 的MS-DOS運行窗口,前者我們一般習慣性地簡稱為終端,后者一般直接稱為shell
【三】shell如何執行用戶的指令
shell有兩種執行指令的方式,第一種方法是用戶事先編寫一個sh腳本文件,內含shell腳本,而后使用shell程序執行該腳本,這種方式,我們習慣稱為shell編程。
第二種形式,則是用戶直接在shell界面上執行shell命令,由於shell界面的關系,大家都習慣一行行的書寫,很少寫出成套的程序來一起執行,所以也稱命令行。
總結:shell可以說只是為用戶與機器之間搭建成的一個橋梁,讓我們能夠通過shell來對計算機進行操作和交互,從而達到讓計算機為我們服務的目的。
以上。
參考資料:
【shell的定義】http://baike.baidu.com/view/849.htm
【shell學習】http://wiki.ubuntu.org.cn/Shell%E7%BC%96%E7%A8%8B%E5%9F%BA%E7%A1%80
