linux shell高階指令碼程式設計之函式篇

2021-06-22 14:19:37 字數 1292 閱讀 2058

1.建立函式

function name

也可以寫成下面這種形式

name()

2.函式返回值

函式退出狀態是函式最後條命令返回的退出狀態,可以用 $? 確定函式的退出狀態

使用return:

#!/bin/bash

func1()

func1

echo "now value = $?"

使用函式的輸出:

#!/bin/bash

func1()

v1=`func1`

echo "v1 = $v1"

allen@ubuntu:~/learnlinux$ ./read.sh 

enter a value: 10

v1 = 20

3.在函式中使用變數

函式可以使用標準引數環境變數來表示命令行傳遞給函式的引數. 專用變數 $# 可以用來確定傳遞給函式的引數數目.

在指令碼中指定函式時,必須在函式所在命令列提供引數 :  func1  $value1  10

#!/bin/bash

# passing parameters to a function

function addem

echo -n "adding 10 and 15: "

value=`addem 10 15`

echo $value

echo -n "let's try adding just one number: "

value=`addem 10`

echo $value

echo -n "now trying adding no number: "

value=`addem`

echo $value

echo -n "finally, try adding three numbers: "

value=`addem 10 15 20`

echo $value

allen@ubuntu:~/learnlinux/unix$ ./func.sh 

adding 10 and 15: 25

let's try adding just one number: 20

now trying adding no number: -1

finally, try adding three numbers: -1

Linux Shell指令碼基礎

shell指令碼在處理自動迴圈或大的任務方面可節省大量時間,且功能強大。任何指令碼都可能有注釋,加注釋需要此行的第乙個字元為 直譯器對此行不予解釋。指令碼不是複雜的程式,它是按行解釋的。指令碼第一行總是以 bin sh開始,這段指令碼通知shell使用系統上的 bourne shell直譯器。指令碼...

linux shell指令碼犯錯

指令碼裡犯了錯 oracle it shell value 1 oracle it shell value 1 bash value command not found oracle it shell value 3 bash value command not found oracle it sh...

Linux shell 指令碼例項

1.寫乙個指令碼,利用迴圈計算10的階乘 2.寫乙個指令碼,執行後,列印一行提示 please input a number 要求使用者輸入數值,然後列印出該數值,然後再次要求使用者輸入數值。直到使用者輸入 end 停止 執行指令碼方法 nuhup sh route.sh 注意前面要用上nohup,...