Shell學習筆記 - 運算符

1、Declare命令

1. 命令格式

declare [+/-] [選項] 變量名shell

其中:數組

-: 給變量設定類型屬性bash

+:取消變量的類型屬性spa

2. 參數說明

-i:將變量聲明爲整型code

-a:將變量聲明爲數組類型blog

-x:將變量聲明爲環境變量字符串

-r:將變量聲明爲只讀變量class

-p:顯示指定變量被聲明的類型test

3. 示例

1)-i示例: 聲明整型變量,因爲shell默認變量的類型是字符串類型,若是須要進行數值的運算,則須要將變量轉化爲整型變量

#!/bin/bash

a=1
b=2

sum=$a+$b
echo "默認字符串類型相加結果:"
echo $sum

declare -i sum=$a+$b
echo "聲明爲整型相加結果:"
echo $sum

#輸出結果:
默認字符串類型相加結果:
1+2
聲明爲整型相加結果:
3

2)-a示例:聲明數組

#!/bin/bash

# 聲明數組
declare -a arr #能夠不寫,shell能夠經過檢測中括號識別數組
arr[0]="a"
arr[1]="b"
arr[2]="c"

# 默認打印數組第一個元素
echo ${arr}

# 打印第二個元素 
echo ${arr[1]}

# 打印全部的元素
echo ${arr[*]}

#輸出結果:
a
b
a b c

3)-x示例:聲明全局變量

-x的功能和export 變量名功能相同,export只是declare -x 變量名的快捷方式

#!/bin/bash

name="test"
declare -x name # 等同效果 export name

echo $name

#輸出結果:
test

4) -r示例:聲明只讀變量

-r會將變量變爲只讀,變爲只讀後,將不能進行修改,刪除,也不能取消只讀,只能重啓才能取消。

#!/bin/bash

name="test"
declare -r name
echo $name

name="abc"
echo $name

#輸出結果:
test
test.sh: line 7: name: readonly variable
test

5)-p示例:顯示指定變量被聲明的類型

#!/bin/bash

declare -i a
declare -p a

declare -a b
declare -p b

declare -x c
declare -p c

declare -r d
declare -p d

#輸出結果:
declare -i a=""
declare -a b='()'
declare -x c=""
declare -r d=""

2、數值運算的方法

1. expr方法

示例:

#!/bin/bash

a=1
b=2
sum=$(expr $a + $b) # 加號兩邊必定要留空格,否則會當成字符串鏈接起來  
echo $sum

#輸出結果:
3

2. $(()) 或 $[]方法

#!/bin/bash

a=1
b=2
sum=$(($a+$b)) # 加號兩邊加不加空格,無所謂
echo $sum

result=$[$a-$b]
echo $result

#運行結果:
3
-1
相關文章
相關標籤/搜索