Shell程式設計規範與變數

2021-10-10 08:55:00 字數 1269 閱讀 6066

四、重定向與管道操作

五、read使用語法:

六、shell變數的作用,型別

七、shell變數賦值

八、linux中的運算

九、特殊的shell變數

什麼是shell指令碼?簡單來說,只要將平時使用的各種linux命令按順序儲存到乙個文字檔案中,然後新增可執行許可權,這個檔案就成了乙個shell指令碼。

sh	first.sh(不需要執行許可權也可以操作)
./	first.sh(需要執行許可權來操作)
source	first.sh(不需要執行許可權可以操作)

標準輸入,輸出和標準錯誤預設使用鍵盤和顯示器作為關聯的裝置,與作業系統進行互動,完成最基本的輸入,輸出操作,即從鍵盤接收使用者輸入的各種命令字串,輸入控制資訊,並將結果輸出到螢幕上;如果是命令執行出錯,也會將錯誤反饋到螢幕上。

在實際的linux系統維護中,可以改變輸入,輸出的內容的方向,而不使用預設的標準輸入,輸出裝置,這種操作稱為重定向

型別操作符

用途重定向輸入

<

從指定的檔案讀取資料,而不是從鍵盤輸入

重定向輸出

>

>>

將輸出結果儲存到指定的檔案(覆蓋原有的內容)

將輸出結果追加到指定的檔案尾部

標準錯誤輸出

2>

2>>

將錯誤資訊儲存到指定的檔案(覆蓋原有的內容)

將錯誤資訊追加到指定檔案中

混合輸出

&>

2>&1

將標準輸出,標準錯誤的內容儲存到同乙個檔案中

read (選項)	(引數)
選項:

變數的型別

定義乙個新的變數變數名以字母或下劃線開頭,區分大小寫,建議全大寫

常見的環境變數

唯讀變數

位置變數

從鍵盤輸入內容為變數賦值

設定變數的作用範圍

求兩個數+、-、*、/、%的三種方法

expr 1 + 2

echo $((1+2))

echo $[3+4]

注:乘法在直接使用過程中是需要*的,因為*是shell正規表示式中的特殊字元,所以需要轉義字元\才能表達真實含義,但是在(())和【】中不需要轉義字元

在shell中,$ @和$ *都表示命令行所有引數(不包含$ 0),但是$ *將命令列的所有引數看成乙個整體,而$ @則區分各個引數

Shell程式設計規範與變數

shell的作用 編寫第乙個shell指令碼 重定向與管道操作 shell變數的作用 型別 自定義變數 特殊的shell變數 shell指令碼就是將要執行的命令按順序儲存到乙個文字檔案,並給該檔案可執行許可權,方便一次性執行的乙個程式檔案。主要是方便管理員進行設定或管理,可結合各種shell控制語句...

Shell程式設計規範與變數

shell指令碼的概念 將執行的命令按順序儲存到乙個文字檔案 給該檔案可執行許可權 可結合各種shell空值語句已完成更複雜的操作 shell指令碼應用場景 重複性操作 互動性任務 批量事務處理 服務執行狀態監控 定時任務執行 什麼是 shell指令碼 呢?簡單的說,只要將平時使用的各種linux命...

Shell程式設計規範與變數

shell指令碼的概念 將要執行的命令按順序儲存到乙個文字檔案 給該檔案可執行許可權 可結合各自shell控制語句以完成更複雜的操作 shell指令碼應用場景 重複性操作 互動性任務 批量事務處理 指令碼執行狀態監測 定時任務執行 簡單來說,將平時使用的各種linux命令按順序儲存到乙個文字檔案,新...