shell程式設計入門簡介

2021-09-23 22:31:34 字數 1722 閱讀 9112

曾經有人說過,學習linux不知道shell程式設計,那就是不懂linux,現在細細品味確實是這樣。shell是作業系統的最外層,shell可以合併程式語言以控制程序和檔案,以及啟動和控制其他程式。

shell通過提示您輸入,向作業系統解釋該輸入,然後處理來自作業系統的任何結果輸出,簡單來說shell就是乙個使用者跟作業系統之間的乙個命令直譯器。

shell是使用者與linux作業系統之間溝通的橋梁,使用者可以輸入命令執行,又可以利用shell指令碼程式設計去執行,如圖所示。

linux shell種類非常多,常見的shell如下:

·□ bourne shell(/usr/bin/sh或/bin/sh);

·□ bourne again shell(/bin/bash);

□ c shell(/usr/bin/csh);

·□ k shell(/usr/bin/ksh);

·□ shell for root(/sbin/sh)。

不同的shell語言的語法有所不同,一般不能交換使用,最常用的shell是bash,也就是bourne again shell。bash由於易用和免費,在日常工作中被廣泛使用,也是大多數linux作業系統預設的shell環境。

shell、shell程式設計、shell指令碼、shell命令之間都有什麼區別呢?簡單來說:shell是乙個整體的概念,shell程式設計與shell指令碼統稱為shell程式設計,shell命令是shell程式設計底層具體的語句和實現方法。

shell指令碼及hello world

要熟練掌握shell程式語言,需要大量的練習,初學者可以用shell列印「hello world」字元,寓意著開始新的啟程!

shell指令碼程式設計需要注意以下幾個事項:

·□ shell指令碼名稱命名一般為英文的大寫、小寫;

·□ 不能使用特殊符號、空格來命名;

·□ shell指令碼字尾以.sh結尾;

·□ 不建議shell命名為純數字,一般以指令碼功能命名;

·□ shell指令碼內容首行需以#!/bin/bash開頭;

·□ shell指令碼中變數名稱盡量使用大寫字母,字母間不能使用「-」,可以使用「_」;

·□ shell指令碼變數名稱不能以數字、特殊符號開頭。

以下為第乙個shell程式設計指令碼,指令碼名稱為first_shell.sh,**如下:

#! /bin/bash

#by author song

echo 「hello world !」

自己建立first_shell.s**件,輸入以上內容即可

first_shell.sh指令碼內容詳解如下:

·□ #!/bin/bash:固定格式,定義該指令碼所使用的shell型別。

·□ #by author song:表示指令碼建立人,#號表示註解。

·□ echo「hello world!」shell指令碼主命令,執行該指令碼呈現的內容。

shell指令碼編寫完畢,如果執行該指令碼,執行使用者需要有執行許可權,可以使用chmod o+x first_shell.sh賦予可執行許可權。然後./first_shell.sh執行即可,還可以直接使用命令執行/ bin/sh first_shell.sh直接執行指令碼,不需要執行許可權,最終指令碼執行顯示效果一樣。

初學者學習shell程式設計,可以將在shell終端執行的各種命令依次寫入到指令碼內容中,可以把shell指令碼當成是shell命令的堆積。

shell程式設計入門步步高 一 shell簡介

shell簡介 shell處於kernel的外層,用來負責接收使用者輸入的命令,然後將命令解釋成kernel能了解的方式,然後由kernel去執行,再將結果傳回預設的輸出周邊。shell是一種命令直譯器,同時也是乙個程式語言。shell有很多種,在眾多的linux發行版中,標準的shell是bash...

shell程式設計入門步步高 一 shell簡介

shell簡介 shell處於kernel的外層,用來負責接收使用者輸入的命令,然後將命令解釋成kernel能了解的方式,然後由kernel去執行,再將結果傳回預設的輸出周邊。shell是一種命令直譯器,同時也是乙個程式語言。shell有很多種,在眾多的linux發行版中,標準的shell是bash...

shell程式設計入門

shell指令碼程式不是複雜的程式,它是按行解釋的。指令碼程式總是以 bin sh 開始,它通知shell使用系統上的bourne shell直譯器。其中 符號是注釋。指令碼程式是從上到下執行的,執行指令碼前需要改變該指令碼程式的執行許可權。確保正確建立指令碼例徑,只有 這樣,指令碼程式才能正確執行...