shell檔案字尾為.sh檔案
用#注釋
用echo 或 printf 輸出
一個簡單的執行個體
#!/bin/bash
echo "Hello World !"
運作一個.sh檔案
chmod +x ./test.sh
./test.sh
shell 變量
定義變量:a="hello" b=1
輸出變量: echo ${a} 或 echo $b 或 echo ${a} "world"
使用 readonly 指令可以将變量定義為隻讀變量,隻讀變量的值不能被改變。readonly a
删除變量:unset a 變量被删除後不能再次使用。unset 指令不能删除隻讀變量。
shell 字元串
shell中主要使用資料和字元串
字元串可以用單引号也可以用雙引号
單引号中不能出現轉義字元“\” 和變量,雙引号中可以。
擷取字元串長度:${#a}${a:1:2}
查詢子字元串:expr index $a e
shell 數組
定義一個數組: array=(a b c d)
讀取數組中的全部元素: ${array[@]}
将數組轉為字元串:${array[*]}
擷取數組長度:${#array}
shell運算符
算數運算符:

關系運算符:
布爾運算符:
邏輯運算符:
字元串運算符:
檔案測試運算符:
shell 流程控制
if else
if condition
then ...
elif condition
then ...
else
...
fi
for
for var in a b c d
do
....
done
while
while conditon
do
....
done
until
until [condition]
do
....
done
case
case $a in
1) ....;;
2) ....;;
3) ....;;
*) ....;;
esac
shell 函數
func(){
echo $1
}
func() a
shell 向腳本傳遞參數
#!/bin/bash
echo "執行的檔案名:$0";
echo "第一個參數為:$1";
輸出結果如下所示:
$ chmod +x test.sh
$ ./test.sh 1
執行的檔案名:./test.sh
第一個參數為:1