shell自定義函數(shù)及參數(shù)調(diào)用解析
一、定義函數(shù)
function fname()
{
statements;
}
或
fname()
{
statements;
}
二、調(diào)用函數(shù)
只需要使用函數(shù)名,即可調(diào)用某個(gè)函數(shù):
$ fname ; #執(zhí)行函數(shù)
可以傳遞參數(shù)給函數(shù),并由腳本進(jìn)行訪問:
fname arg1 arg2; # 傳遞參數(shù)
以下是函數(shù)fname的定義。在函數(shù)fname中,包含了各種訪問函數(shù)參數(shù)的方法。
fname()
{
echo $1, $2; # 訪問參數(shù)1和參數(shù)2
echo "$@"; # 以列表的方式一次性打印所有的參數(shù)
echo "$*"; # 類似于$@,但是參數(shù)被作為單個(gè)實(shí)體(字符串)
return 0; # 返回值
}
類似地,參數(shù)可以傳遞給腳本并通過script:$0(腳本名)訪問。
有關(guān)bash中函數(shù)參數(shù)的注解:
$1是第一個(gè)參數(shù)。
$2是第二個(gè)參數(shù)。
$n是第n個(gè)參數(shù)。
"$@"被擴(kuò)展成"$1" "$2" "$3"等。
"$*"被擴(kuò)展成"$1c$2c$3c",其中c是IFS的第一個(gè)字符。
"$@"用得最多。由于"$*"將所有的參數(shù)當(dāng)作單個(gè)字符串,因此它很少被使用。
相關(guān)文章
通過Spring Shell 開發(fā) Java 命令行應(yīng)用
這篇文章主要介紹了通過Spring Shell 開發(fā) Java 命令行應(yīng)用的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-11-11利用Linux中的crontab實(shí)現(xiàn)分布式項(xiàng)目定時(shí)任務(wù)功能
crond是Linux用來定期執(zhí)行程序的命令.這篇文章主要介紹了利用Linux中的crontab實(shí)現(xiàn)分布式項(xiàng)目定時(shí)任務(wù),需要的朋友可以參考下2018-01-01一個(gè)監(jiān)控Squid運(yùn)行進(jìn)程數(shù)并自動重啟的簡潔Shell腳本分享
這篇文章主要介紹了一個(gè)監(jiān)控Squid運(yùn)行進(jìn)程數(shù)并自動重啟的簡潔Shell腳本分享,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-12-12Linux Shell中的特殊符號和含義簡明總結(jié)(包含了絕大部份)
這篇文章主要介紹了Linux Shell中的特殊符號和含義簡明總結(jié),本文匯總了包含了絕大部份的Shell特殊符號,對每一個(gè)符號的作用做了總結(jié),需要的朋友可以參考下2014-06-06Linux?Shell任務(wù)控制的實(shí)現(xiàn)示例
本文主要介紹了Linux?Shell任務(wù)控制的實(shí)現(xiàn)示例,包括向腳本發(fā)送信號、修改腳本的優(yōu)先級以及在腳本運(yùn)行時(shí)從暫停切換到運(yùn)行模式,感興趣的可以了解一下2024-01-01