計算機小白,想了解一下ubuntu下的終端,shell,bash是什麼以及區別,目前只會使用終端?
非伸手黨,只不過百度後還是不明白
linux 內核相當於你的大腦。
終端 相當於你的眼睛。
shell 相當於可以將眼睛看到的多彩事物處理成大腦能接受的命令程序集。
bash 相當於一個很大且漂亮的眼睛,眼睛有多種,只是這種大家都喜歡而已。
終端就是上面那個可以輸入命令的小窗口。
shell是一套介面,這裡說的是linux shell,是用戶和linux內核溝通的一套介面。
dash是其中一套shell規範,可以看到,還有sh dash bash等等其他規範。bash之於shell就如同Ubuntu之於Linux。
shell 相當於一個類
bash相當於一個對象。
即shell 是馬,sh是矮白馬,ksh是矮黑馬,csh是矮棕馬,bash 是改良白馬,pdksh改良黑馬,tcsh是改良棕馬
(這個比喻不是很好,就是讓你感受一下)
Bash 全稱就是bourn again shell , 而bourn shell 就是 sh , 謎底寫在謎面上,bash就是sh的改良版本。shell語言還有pdksh , tcsh ,他們分別是ksh 和csh的改良版本。
不過Bash是大部分Linux的默認shell 。
1. 終端是一個在窗口中繪製文本的程序,它會在屏幕上顯示輸出,也能讓你通過鍵盤輸入內容。準確講,應該被稱為「終端模擬器」,是對早年老式終端機的一種模擬程序。終端本身並不知道如何處理你的輸入內容,它只是把你輸入的東西發送給某個獨立的處理程序(並不一定是 Shell,終端完全可以不依賴 Shell 運行各種終端程序。比如你在 Python 解釋器的終端中,就可以通過這種終端發送一段 Python 腳本給 Python 解釋器運行;你也可以在通常所說的終端中直接指定不是 Shell 的特定的處理程序)。
2. Shell 是上一點所說的「獨立的處理程序」的一種,它能將你輸入的內容解釋為命令,確定你想運行的程序並運行之,然後將輸出發回給終端。顧名思義,你可以把 Shell 當作 OS 外的一層「殼」,可以用來與 OS 內核進行交互。你同樣可以在不使用終端的情況下使用 Shell,比如 Shell 腳本編程,把命令寫在文本文件中,然後直接從文件中運行 Shell 程序。
3. Shell 有很多種,bash 就是其中目前使用最廣泛的一種。
shell就是殼兒的意思,界面,分為圖形界面,命令行界面。bash是shell的一種。
bash和shell就像nodejs和commonjs
推薦閱讀:
TAG:Ubuntu入門 |