1. 程式人生 > >Linux學習筆記_shell程式設計之運算子

Linux學習筆記_shell程式設計之運算子

shell程式設計之運算子
https://www.imooc.com/learn/355

**簡介:**本課程是《Tony老師聊shell——變數》課程的延續,主要介紹Linux shell程式設計基礎中的運算子。包括declare命令、數值運算方法和變數測試。
首先在declare命令中介紹了數值型和陣列型別的宣告,然後介紹了運算子的詳細使用,最後對不同場景下的變數進行了測試。

目錄:
第1章 概述及declare命令
本章進行課程介紹及declare命令。包括將變數宣告為數值型和宣告陣列變數等。
1-1 課程概述及declare命令 (19:41)
第2章 數值運算方法
本章介紹shell中的數值運算方法。包括expr或let陣列運算工具、 (

( ) ) ((運算式))或 [運算式],以及一些運算子的詳細使用。
2-1 shell程式設計之數值運算方法 (10:47)
第3章 變數測試
本章介紹如何在shell中對各種不同場景下的變數進行測試。
3-1 shell程式設計之變數測試 (13:34)

筆記:
1-1 課程概述及declare命令 (19:41)

  1. shell變數的缺點,弱型別且是預設字串型
  2. declare [+/-][選項] 變數名
    “-” : 給變數設定型別屬性
    “+”: 取消變數的型別屬性
    常用選項
    -a : 將變數宣告為陣列型 declare -a movie[0]=zp , 讀取的時候要加大括號 echo ${movie[0]}
    -i : 將變數宣告為整數型 declare -i c=11
    -x : 將變數宣告為環境變數 declare -x test=123 , 其實export命令本質上就是執行的declare -x
    -r : 將變數宣告為只讀變數 declare -r test , 注意只讀屬性會讓變數無法修改和刪除,甚至不能取消只讀屬性
    -p : 顯示變數被宣告的型別 declare -p , 查詢所有變數的屬性。declare -p 變數名 , 查詢指定變數的屬性

2-1 shell程式設計之數值運算方法 (10:47)

  1. 數值運算方法1,declare -i c = a + a+ b
  2. 數值運算方法2,d=$(expr $a + $b) , 注意“+”號左右兩側必須有空格
  3. 數值運算方法3,$((運算式)) 或 [ ] , a = [運算式] , a= $((11+3*3/2))
  4. shell支援的運算子和對應的優先順序如下表,只需要記住用雙小括號的這種方式就夠了。
    在這裡插入圖片描述

3-1 shell程式設計之變數測試 (13:34)

  1. 僅對shell語言生效,只做瞭解。簡單講就是用變數x間接推斷變數y的值。
  2. 變數測試在指令碼優化時使用