Shell腳本函數(shù)傳遞參數(shù)的實(shí)現(xiàn)方法
如何傳遞參數(shù)到Shell腳本函數(shù)
通常,在其他腳本語言中,您可以將參數(shù)和參數(shù)作為function_name(parameter1, parameter2,…)傳遞給函數(shù),這在shell腳本函數(shù)中不支持。在shell腳本函數(shù)中,您可以在函數(shù)調(diào)用期間直接傳遞參數(shù),而無需在函數(shù)定義中定義它們的名稱,并直接使用位置參數(shù) $1 作為第一個(gè)參數(shù), $2 作為第二個(gè)參數(shù),以此類推。
在shell腳本中定義函數(shù)有兩種方法
function function_name { ... }
OR
function_name () { ... }
無論是否傳遞參數(shù),每個(gè)shell腳本函數(shù)都必須像上面那樣定義。您將注意到,在函數(shù)簽名中沒有指定任何實(shí)參。
下面介紹如何調(diào)用同一個(gè)shell腳本函數(shù)
function_name arg1 arg2 ...
正如前面提到的,每個(gè)shell腳本函數(shù)通過其位置$1、$2等引用參數(shù)。$0表示函數(shù)的名稱。
下面是一個(gè)shell腳本函數(shù)的例子,它讀取第一個(gè)參數(shù)并回顯它。創(chuàng)建一個(gè)空的shell腳本,如下所示。
$ sudo vi test_script.sh
向它添加以下行。
#!/usr/bin/env sh test() { ? ? echo "Parameter #1 is $1" } test 20
用以下命令運(yùn)行上面的腳本。
$ sudo ./test_script.sh Parameter #1 is 20
重要的是要記住,只能在函數(shù)定義之后調(diào)用函數(shù)。如果你在定義之前調(diào)用它,那么它會(huì)給你一個(gè)錯(cuò)誤。
您還可以調(diào)用在shell腳本函數(shù)之外定義的變量,并將它們用作參數(shù)。在下面的例子中,我們使用了在函數(shù)外部定義的變量 $name 作為參數(shù)
$ sudo vi test_script.sh
向它添加以下行。
test() { ? ? echo hello $name } name="tom" test
用以下命令運(yùn)行上面的腳本。
$ sudo ./test_script.sh hello tom
在本文中,我們研究了向shell腳本函數(shù)傳遞參數(shù)的兩種不同方法。
到此這篇關(guān)于Shell腳本函數(shù)傳遞參數(shù)的實(shí)現(xiàn)方法的文章就介紹到這了,更多相關(guān)Shell函數(shù)傳遞參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Linux echo命令的使用及三種實(shí)現(xiàn)方式
這篇文章主要介紹了Linux echo命令的使用及三種實(shí)現(xiàn)方式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05Shell腳本while、until循環(huán)語句簡明教程
這篇文章主要介紹了Shell腳本while、until循環(huán)語句簡明教程,簡潔易懂的簡明教程,需要的朋友可以參考下2014-07-07遠(yuǎn)程SSH連接服務(wù)與基本排錯(cuò)經(jīng)驗(yàn)總結(jié)
下面小編就為大家?guī)硪黄h(yuǎn)程SSH連接服務(wù)與基本排錯(cuò)經(jīng)驗(yàn)總結(jié)。小編覺得聽不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-04-04Linux實(shí)現(xiàn)徹底清理空文件夾的方法詳解
這篇文章主要介紹了Linux實(shí)現(xiàn)徹底刪除指定路徑下的所有空文件夾。這里的空文件夾的認(rèn)定標(biāo)準(zhǔn)是:如果某個(gè)文件夾的子文件夾全是空文件夾,也認(rèn)為該文件夾是空文件夾,需要的可以參考一下2022-10-10linux shell自定義函數(shù)(定義、返回值、變量作用域)介紹
linux shell 可以用戶定義函數(shù),然后在shell腳本中可以隨便調(diào)用。下面說說它的定義方法,以及調(diào)用需要注意那些事項(xiàng)2013-02-02