- shell腳本,第一句:
#!/bin/sh 或者 #!/bin/bash
#!
是告訴系統用bash來運行 - shell腳本命名:
name或者name.sh
, 後綴.sh
更直觀,說明這是一個shell腳本文件 - 運行方法:
bash test.sh 或者 source test.sh 或者 . test.sh 或者 /bin/sh test.sh 或者 /bin/bash test.sh
一、shell變量
1.1 shell變量命名,使用變量:
val_2="love" # 等號前後不能有空格
echo $val_2 # 使用變量時,加$
echo ${val_2}
1.2 隱式給變量賦值
for file in `ls /etc` # 隱式賦值,循環/etc目錄下的所有文件
或者
for file in $(ls /etc) # 隱式賦值,循環/etc目錄下的所有文件
1.3.只讀變量
myurl="www.jinsong.com"
readonly myurl # 只讀變量,不能改變
1.4.刪除變量,不能刪除只讀變量
unset _val
二、shell字符串
2.1.字符串定義
name=Max
myname='my name is $name' # 單引號:不能引用變量,不能使用轉義字符. 打印 my name is $name
myname1='my name is '$name'' # 單引號:不能引用變量,不能使用轉義字符. 打印 my name is Max
echo $myname
yourname="your name is \"$name\"!" # 雙引號:可以引用變量,可以使用轉義字符
yourname1="your name is $name!" # 打印 your name is Max
echo ${yourname}
2.2.字符串拼接
yourname=mini
green3="your name is "$yourname!" "
green4="your name is $yourname!"
echo ${green3} $green4 # 打印:your name is mini! your name is mini!
2.3.字符串長度
string="abcd!"
echo ${#string} # 5
stlong="string's length is ${#string}!"
2.4.提取子字符串
string="ILoveLJ"
echo ${string:1:4} #將string字符串,從第二個字符開始取4個字符
2.5.查找字符串
string="ILoveLJ"
echo `expr index "$string" oe` #查找字符 o 或 e 的位置(哪個字母先出現就計算哪個):
#注意: 以上腳本中 ` 是反引號,而不是單引號 ',不要看錯了哦。
三、Shell 數組
3.1.定義數組的三種方法
array=(v0 v1 v2 v3 v4) # 第一種方法 () 空格
array1=( # 第二種方法
a0
a1
a2
a3
a4)
array2[0]=a0 # 第三種方法
array2[1]=a1
array2[2]=a2
array2[8]=a8
3.2.讀取數組
echo ${array[1]} # 格式: ${數組名[下標]}
echo ${array1[@]} # 打印所有元素 ${數組名[@]}
3.3.打印數組長度,兩種方法
echo ${#array[@]}
echo ${#array[*]}
3.4 打印數組單個元素的長度
echo ${#array[1]}