日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Shell腳本函數傳遞參數的實現方法_linux shell

作者:James?Gosling ? 更新時間: 2022-09-23 編程語言

如何傳遞參數到Shell腳本函數

通常,在其他腳本語言中,您可以將參數和參數作為function_name(parameter1, parameter2,…)傳遞給函數,這在shell腳本函數中不支持。在shell腳本函數中,您可以在函數調用期間直接傳遞參數,而無需在函數定義中定義它們的名稱,并直接使用位置參數 $1 作為第一個參數, $2 作為第二個參數,以此類推。

在shell腳本中定義函數有兩種方法

function function_name {
    ... 
} 

OR

function_name () {
    ... 
}

無論是否傳遞參數,每個shell腳本函數都必須像上面那樣定義。您將注意到,在函數簽名中沒有指定任何實參。

下面介紹如何調用同一個shell腳本函數

function_name arg1 arg2 ...

正如前面提到的,每個shell腳本函數通過其位置$1、$2等引用參數。$0表示函數的名稱。

下面是一個shell腳本函數的例子,它讀取第一個參數并回顯它。創建一個空的shell腳本,如下所示。

$ sudo vi test_script.sh

向它添加以下行。

#!/usr/bin/env sh

test() {
? ? echo "Parameter #1 is $1"
}

test 20

用以下命令運行上面的腳本。

$ sudo ./test_script.sh
Parameter #1 is 20

重要的是要記住,只能在函數定義之后調用函數。如果你在定義之前調用它,那么它會給你一個錯誤。

您還可以調用在shell腳本函數之外定義的變量,并將它們用作參數。在下面的例子中,我們使用了在函數外部定義的變量 $name 作為參數

$ sudo vi test_script.sh

向它添加以下行。

test() {
? ? echo hello $name
}

name="tom"
test

用以下命令運行上面的腳本。

$ sudo ./test_script.sh
hello tom

在本文中,我們研究了向shell腳本函數傳遞參數的兩種不同方法。

原文鏈接:https://blog.csdn.net/weixin_43810067/article/details/124184296

欄目分類
最近更新