欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

shell腳本function傳參的具體使用

 更新時間:2023年04月26日 08:26:23   作者:Apex Predator  
本文主要介紹了shell腳本function傳參的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

這里直接上操作來說明function 的傳參

新建一個腳本

vi 1.sh

#!/bin/bash
function check_a {
     echo $2
     echo $3
     echo "this is check_a"
}
function check_b {
     echo $2
     echo "this is check_b"
}
$1   #$1作為選擇執(zhí)行哪個function的參數

執(zhí)行以下這個腳本傳入參數看看會有什么結果

sh 1.sh check_a kafka rabbitmq

sh 1.sh check_b kafka

 可以看到執(zhí)行兩個function函數的腳本都有輸出固定的參數,說明$1是傳參成功的,但是腳本里定義的變量參數都輸出為空,說明沒有參數傳入,但是在執(zhí)行語句的時候明明有寫入參數

更改一下腳本

#!/bin/bash
function check_a {
     echo $2
     echo $3
     echo "this is check_a"
}
function check_b {
     echo $2
     echo "this is check_b"
}
$1 $2 $3

執(zhí)行以下這個腳本傳入參數看看會有什么結果

sh 1.sh check_a kafka rabbitmq

 sh 1.sh check_b kafka

可以看到check_a腳本輸出了$2變量參數,但是$2輸出的參數是有問題的,$2輸出了rabbitmq,這個參數應該是$3變量輸出才對,然而$3變量參數輸出為空,kafka參數依舊沒有輸出,check_b腳本輸出的$2參數也依舊是空

再次更改腳本

#!/bin/bash
function check_a {
     echo $1
     echo $2
     echo "this is check_a"
}
function check_b {
     echo $1
     echo "this is check_b"
}
$1 $2 $3

 執(zhí)行以下這個腳本傳入參數看看會有什么結果

sh 1.sh check_a kafka rabbitmq

 sh 1.sh check_b kafka

 可以看到這次check_a腳本正確輸出了所有的變量參數,check_b也正確的輸出了所有變量參數,其實是因為在外部傳入腳本的參數不能直接傳到function函數定義的腳本里面,只能先傳到腳本里,在通過定義每個function函數的參數隊列去重新傳入參數到function函數的腳本中

到此這篇關于shell腳本function傳參的具體使用的文章就介紹到這了,更多相關shell function傳參內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Shell腳本while、until循環(huán)語句簡明教程

    Shell腳本while、until循環(huán)語句簡明教程

    這篇文章主要介紹了Shell腳本while、until循環(huán)語句簡明教程,簡潔易懂的簡明教程,需要的朋友可以參考下
    2014-07-07
  • Shell內置命令教程之alias和echo

    Shell內置命令教程之alias和echo

    我們日常使用shell輸入命令得到結果的方式是交互式的方式,而shell腳本使用的是非交互式方式,shell提供了alias功能來簡化我們的日常操作,下面這篇文章主要給大家介紹了關于Shell內置命令教程之alias和echo的相關資料,需要的朋友可以參考下
    2022-03-03
  • shell中常用的命令之diff和patch用法

    shell中常用的命令之diff和patch用法

    這篇文章主要介紹了shell中常用的命令:diff和patch,在這里diff是比較文件內容,patch是打補丁的,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • CentOS 6.3下給PHP添加mssql擴展模塊教程

    CentOS 6.3下給PHP添加mssql擴展模塊教程

    這篇文章主要介紹了CentOS 6.3下給PHP添加mssql擴展模塊教程,本文使用freetds編譯安裝實現,需要的朋友可以參考下
    2014-09-09
  • shell腳本nicenumber實現代碼

    shell腳本nicenumber實現代碼

    給出一個數字,用逗號分隔的形式顯示出來,希望DD和TD被實例化等
    2016-08-08
  • 查看linux服務器上jdk的安裝路徑方法

    查看linux服務器上jdk的安裝路徑方法

    這篇文章主要介紹了查看linux服務器上jdk的安裝路徑方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Shell腳本中實現把輸入的密碼轉換為*(星號)的方法

    Shell腳本中實現把輸入的密碼轉換為*(星號)的方法

    這篇文章主要介紹了Shell腳本中實現把輸入的密碼轉換為*(星號)的方法,從而把密碼字符串隱藏起來,比較實用的一個功能,在做交互設計時非常有用哦,需要的朋友可以參考下
    2014-06-06
  • 如何查看Linux提供的Shell解析器

    如何查看Linux提供的Shell解析器

    這篇文章主要介紹了查看Linux提供的Shell解析器的相關知識,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • Shell腳本之Expect免交互的實現

    Shell腳本之Expect免交互的實現

    這篇文章主要介紹了Shell腳本之Expect免交互的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • Linux 中的 Openssl命令及實例代碼

    Linux 中的 Openssl命令及實例代碼

    OpenSSL是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,并提供豐富的應用程序供測試或其它目的使用
    2017-09-09

最新評論