書-Linux命令行與shell腳本編程大全(第3版)

 image

★函數(方法)

☆函數退出狀態碼-$?

★函數-返回值(return)

☆函數-輸出

 

 

函數(方法)

函數的使用有兩種格式。

 

1.有關鍵字function:

 

function name {

    commands

}

 

2.有括號:

 

name() {

    commands

}

 

記得name要跟後面的大括號空一格,不然有可能會報錯。

使用方式就是直接name就好了,不用括號,不用$號。

 

程式:

image

 

結果:

image

 

要使用函數必須要再使用前去定義,因為程式是由上往下看,你把函數定義在你要用的後面就一定找不到。

 

函數退出狀態碼-$?

正常0,不正常是1以上。

 

函數的退出狀態碼是看你函數的最後一行是否有被執行成功,就算前面錯了也沒關係。

 

程式:

image

 

結果:

image

 

程式:

image

 

結果:

image

函數-返回值(return)

可以使用$?退出狀態碼來顯示返回的值,但是有限制。

 

1.返回的值的範圍只有0~255之間,只要超出了這個範圍就會溢位跑出奇怪的值。

2.return是在程式碼的最後一行。

 

 

程式:

把輸入的值*2再return,用$?顯示。

image

 

結果:

image

 

image

其實也不是什麼奇怪的值就是0~255總共有256個數字那150*2就是300-256=44,溢位會把多餘的數字減掉。

 

函數-輸出

如果輸出的值大於255,就要用另外一種方式,直接使用echo把函數的值輸出,並用變數去取得再輸出。

 

程式:

image

 

結果:

image

 

 

 

 

  

 

創作者介紹
創作者 讀書小天地 的頭像
讀書小天地

書籍分享天地

讀書小天地 發表在 痞客邦 留言(0) 人氣()