Shell 入門教程(一) 基礎概念

2022-07-09 22:57:11 字數 1037 閱讀 6170

說起 shell 語言,其實很多人習慣的叫法是叫做 shell 指令碼。或許你在還沒學習之前就聽說過,shell 指令碼、shell 語言、shell 環境等等名詞。但是它們到底是什麼,它們之間有什麼區別?下面我們就逐個來解答一下。

我們知道對於所有計算機裝置來說,它們都是由 cpu、記憶體、硬碟等硬體做成的。但是單單有這些硬體,我們還沒辦法使用,因為我們不知道怎麼和這些冷冰冰的硬體溝通。

為了讓這些硬體聽懂我們的話,計算機的先輩們費盡了九牛二虎之力,寫了乙個程式來把我們的話翻譯給機器聽。這個翻譯程式可厲害了,只要你輸入具體的命令,它就會把它翻譯給機器聽,這樣你就可以和機器溝通了。例如,我們輸入ifconfig可以檢視 ip 位址,翻譯程式就會將這條命令翻譯給硬體,告訴它我們要檢視 ip 位址。其實這裡的翻譯程式就是 shell,而具體的命令就是linux命令。

簡單地說,shell 就是一套位於硬體和使用者之間的程式,我們一般稱之為直譯器。

有了 shell 這個直譯器,硬體就能聽懂我們輸入的命令了。但當我們要做一些複雜的邏輯操作時,例如篩選出占用 cpu 最高的程序id。這時候就不僅僅只是乙個命令那麼簡單了,我們需要進行邏輯判斷等一系列操作。

所以說 shell 語言就是一系列語言規範的集合,只要你按照這些規範將你的 linux 命令組合起來,那麼 shell 就可以正確解析出你的意圖。

簡單地說,shell 語言其實就是一系列的語法規範。

簡單地說,由 linux 命令和 shell 語言規範組成而成的一系列字元,我們就稱之為 shell 指令碼。

unix 類系統經過了長時間的發展,衍生出了很多不同的版本,這些不同版本的 shell 不太一致,其支援的 linux 命令有有所不同。現存的 shell 有下面這幾個:

所以說 shell 環境就是指的就是擁有這些 shell 的環境。在這些 shell 環境中,bash 由於易用和免費,在日常工作中被廣泛使用。同時,bash 也是大多數linux 系統預設的 shell。

關於概念就解釋到這裡了,下一小節我們介紹如何搭建學習 shell 語言的環境。

shell指令碼 入門教程(一)

0.摘要 本文主要介紹shell指令碼的概念,並給出hello world示例,讓讀者對shell指令碼有乙個基礎的認識。1.什麼是指令碼 簡單地說 在linux或類似系統中,我們常常會使用一系列的命令來完成一件小型的工作。如果把這些命令串起來並存放到乙個檔案中,那麼就得到了乙個指令碼。當然,指令碼...

shell教程(一) 基礎概念

一般命令列,指的是shell。shell是乙個程式,接受從鍵盤輸入的命令,然後把命令傳遞給作業系統去執行。這叫做 shell 提示符,無論何時當 shell 準備好了去接受輸入時,它就會出現。然而,它可能會以各種各樣的面孔顯示,這則取決於不同的 linux 發行版,它通常包括你的使用者名稱 主機名,...

shell指令碼 入門教程(二)

0.摘要 本文主要介紹shell指令碼中的變數和輸出方式。1.變數 變數 variable 就是為了某個資訊片段所起的名字,所有程式語言都需要變臉,因此shell也不例外。每個變數都有乙個值 value 這是分配給變數的內容或者資訊。shell中的變數可以是空值,null,即不含任何字元。空值在sh...