婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Shell腳本函數定義和函數參數

Shell腳本函數定義和函數參數

熱門標簽:陜西電銷卡外呼系統怎么安裝 杭州機器人外呼系統 excel地址地圖標注 東莞電銷機器人價格一覽表 旅游地圖標注大全 百度地圖標注圖標更換 百度地圖的地圖標注 地圖標注超出范圍怎么辦 佛山高德地圖標注中心

一、Shell函數

本教程目前為止所有腳本都是從頭到尾執行。這樣做很好,但你也許已經注意到有些腳本段間互相重復。

shell允許將一組命令集或語句形成一個可用塊,這些塊稱為shell函數。

shell中函數的定義格式如下:

復制代碼 代碼如下:
函數名(){
    command1
    command2
    ...
    commandN
    [ return value ]
}

如果愿意,可在函數名前加上關鍵字function,這取決于使用者。

復制代碼 代碼如下:
function 函數名(){
    command1
    command2
    ...
    commandN
    [ return value ]
}

函數返回值,可以顯示增加return語句;如果不加,則將最后一條命令運行結果作為返回值(一般為0,如果執行失敗則返回錯誤代碼)。 return后跟數值(0-255)。

函數可以放在同一個文件中作為一段代碼,也可以放在只包含函數的單獨文件中。函數不必包含很多語句或命令,甚至可以只包含一個echo語句,這取決于使用者。

下面的例子定義了一個函數并進行調用:

復制代碼 代碼如下:

#!/bin/bash
demoFun(){
    echo "This is your first shell function!"
}
echo "Function begin..."
hello
echo "Function end!"

輸出:
Function begin...
This is your first shell function!
Function end!

下面定義一個帶有return語句的函數:

復制代碼 代碼如下:

#!/bin/bash
funWithReturn(){
    echo "The function is to get the sum of two numbers..."
    echo -n "Input first number: "
    read aNum
    echo -n "Input another number: "
    read anotherNum
    echo "The two numbers are $aNum and $anotherNum !"
    return $(($aNum+$anotherNum))
}
funWithReturn
echo "The sum of two numbers is $? !"

輸出類似下面:
The function is to get the sum of two numbers...
Input first number: 25
Input another number: 50
The two numbers are 25 and 50 !
The sum of two numbers is 75 !

函數返回值在調用該函數后通過 $? 來獲得。

注意:所有函數在使用前必須定義。這意味著必須將函數放在腳本開始部分,直至shell解釋器首次發現它時,才可以使用。調用函數僅使用其函數名即可。

二、Shell函數參數

在Shell中,調用函數時可以向其傳遞參數。在函數體內部,通過 $n 的形式來獲取參數的值,例如,$1表示第一個參數,$2表示第二個參數...

帶參數的函數示例:

復制代碼 代碼如下:

#!/bin/bash
funWithParam(){
    echo "The value of the first parameter is $1 !"
    echo "The value of the second parameter is $2 !"
    echo "The value of the tenth parameter is $10 !"
    echo "The value of the tenth parameter is ${10} !"
    echo "The value of the eleventh parameter is ${11} !"
    echo "The amount of the parameters is $# !"
    echo "The string of the parameters is $* !"
}
funWithParam 1 2 3 4 5 6 7 8 9 34 73

輸出:
The value of the first parameter is 1 !
The value of the second parameter is 2 !
The value of the tenth parameter is 10 !
The value of the tenth parameter is 34 !
The value of the eleventh parameter is 73 !
The amount of the parameters is 12 !
The string of the parameters is 1 2 3 4 5 6 7 8 9 34 73 !"

注意,$10 不能獲取第十個參數,獲取第十個參數需要${10}。當n>=10時,需要使用${n}來獲取參數。

另外,還有幾個特殊字符用來處理參數:

您可能感興趣的文章:
  • Shell動態生成數組的多種方法
  • shell 使用數組作為函數參數的方法(詳解)

標簽:通遼 南充 雅安 朝陽 延邊 西藏 青島 隨州

巨人網絡通訊聲明:本文標題《Shell腳本函數定義和函數參數》,本文關鍵詞  Shell,腳本,函數,定,義和,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Shell腳本函數定義和函數參數》相關的同類信息!
  • 本頁收集關于Shell腳本函數定義和函數參數的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 那曲县| 万盛区| 青冈县| 南汇区| 繁峙县| 灵璧县| 皮山县| 木兰县| 孙吴县| 旌德县| 滕州市| 自治县| 西城区| 马龙县| 石阡县| 永泰县| 靖宇县| 岳池县| 额敏县| 新田县| 石嘴山市| 齐齐哈尔市| 化隆| 桃源县| 阳西县| 星子县| 南乐县| 连云港市| 江陵县| 图木舒克市| 永和县| 万年县| 峨眉山市| 深水埗区| 孝义市| 思茅市| 阳高县| 兴国县| 利辛县| 库伦旗| 尚义县|