国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

shell 使用數組作為函數參數的方法(詳解)

2019-10-26 18:51:41
字體:
來源:轉載
供稿:網友

因工作需要,需要使用shell開發一些小工具,當使用數組作為函數參數時,發現只能傳遞數組的第一個元素,數組后面的元素不能傳遞到函數內。

#!/bin/bashfunction showArr(){  arr=$1  for i in ${arr[*]}; do    echo $i  done}regions=("GZ" "SH" "BJ")showArr $regionsexit 0

把代碼保存為test.sh后執行,只輸出了第一個元素。

./test.shGZ

$1表示獲取函數的第一個參數,而函數的第一個參數就是regions數組,這樣就奇怪了,為什么只能獲取到數組的第一個元素呢?

經測試

echo $regions

只會輸出第一個元素,所以使用regions作為參數傳遞,只會傳遞第一個元素。

因此需要把參數寫成 “${regions[*]}” 才可以作為數組傳遞。

代碼修改后如下:

#!/bin/bashfunction showArr(){  arr=$1  for i in ${arr[*]}; do    echo $i  done}regions=("GZ" "SH" "BJ")showArr "${regions[*]}"exit 0

運行后輸出數組所有元素,因此修改后可以把數組作為函數參數傳遞使用。

./test.shGZSHBJ

以上這篇shell 使用數組作為函數參數的方法(詳解)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 延长县| 新乡市| 洛扎县| 迭部县| 勐海县| 桃江县| 讷河市| 太康县| 治县。| 仁化县| 新野县| 台州市| 土默特右旗| 温州市| 峨边| 凯里市| 平顶山市| 泽州县| 晴隆县| 瓦房店市| 彰化市| 渑池县| 香格里拉县| 濮阳县| 当雄县| 陆良县| 千阳县| 天等县| 岑溪市| 沾益县| 饶河县| 福海县| 兴安县| 广宗县| 余庆县| 东方市| 且末县| 阿鲁科尔沁旗| 岑巩县| 莱阳市| 荆州市|