1、函式
shell中,函式也分為系統函式和使用者自定義函式。而系統函式說白了,就是linux命令
2、系統函式
常見的系統函式有很多,比如檔案類的、目錄類等等。這裡以幾個命令做個案例
2.1、案例
在當前目錄建立test目錄,建立成功則列印成功,相反則列印失敗
3、自定義函式
3.1、基本格式
宣告函式
[ function ] funname[()]
{
todo;
[return int;]
}
呼叫函式
funcname [引數1 引數2 。。。]
備註: []說明可以省略,當在宣告中,function和函式名後的(),可以同時存在,也可以存在其中一個
3.2、注意
必須在呼叫函式地方之前,先宣告函式,shell檔案是逐行執行。不會像其它語言一樣先編譯。
函式返回值,只能透過$?系統變數獲得,可以顯示加:return返回,如果不加,將以最後一條命令執行結果,作為返回值。return後跟數值n(0-255)
函式獲取傳入引數跟傳遞給shell檔案的方式一樣
3.3、案例
編寫函式,接受引數並實現累加操作
原始碼
#!/bin/bash
toDoSum()
{
# 判斷傳入引數的個數
if [ $# -lt 2 ];then
echo “傳入的引數不能小於兩個”
exit 0
fi
i=$1
s=0
while [ $i -le $2 ]
do
s=$[$s+$i]
i=$[$i+1]
done
echo $1“累加到”$2“的值為:”$s
}
toDoSum 1 5
toDoSum 1
執行結果