濮阳杆衣贸易有限公司

主頁 > 知識庫 > Linux Shell Map的用法詳解

Linux Shell Map的用法詳解

熱門標簽:電話機器人對家居行業(yè)幫助大嗎 如何申請400的電話呀 合肥電銷外呼系統(tǒng)供應商 蘭州電銷機器人加盟 AI智能電銷機器人壞處 地圖標注審核周期 沈陽ai電銷智能機器人 電商外呼系統(tǒng)排名 黑暗之魂3地圖標注

Map定義:

在使用map時,需要先聲明,否則結(jié)果可能與預期不同,array可以不聲明

方式1:

declare -A myMap
myMap["my03"]="03"

方式2:

declare -A myMap=(["my01"]="01" ["my02"]="02")
myMap["my03"]="03"
myMap["my04"]="04"

Map初始化:

與array類似,可以使用括號直接初始化,也可以通過添加的方式來初始化數(shù)據(jù),與array不同的是,括號直接初始化時使用的為一個鍵值對,添加元素時,下標可以不是整數(shù)

myMap["my03"]="03"
myMap["my04"]="04"

輸出Map所有的key、value、長度:

# 1)輸出所有的key
#若未使用declare聲明map,則此處將輸出0,與預期輸出不符,此處輸出語句格式比arry多了一個!
echo ${!myMap[@]}
#2)輸出所有value
#與array輸出格式相同
echo ${myMap[@]}
#3)輸出map長度
#與array輸出格式相同
echo ${#myMap[@]}

Map遍歷:

#1)遍歷,根據(jù)key找到對應的value
for key in ${!myMap[*]};do
 echo $key
 echo ${myMap[$key]}
done
#2)遍歷所有的key
for key in ${!myMap[@]};do
 echo $key
 echo ${myMap[$key]}
done
#3)遍歷所有的value
for val in ${myMap[@]};do
 echo $val
done

Map測試:

[root@cdh-143 shell-test]# more map-test.sh
#!/bin/sh

echo "一、定義Map:declare -A myMap=([\"myMap00\"]=\"00\" [\"myMap01\"]=\"01\")"
declare -A myMap=(["my00"]="00" ["my01"]="01")
myMap["my02"]="02"
myMap["my03"]="03"

echo "二、輸出所有的key:"
echo ${!myMap[@]}

echo "三、輸出所有value:"
echo ${myMap[@]}

echo "四、輸出map的長度:"
echo ${#myMap[@]}

echo "五、遍歷,根據(jù)key找到對應的value:"
for key in ${!myMap[*]};do
 echo "key:"$key
 echo "value:"${myMap[$key]}
done

echo "六、遍歷所有的key:"
for key in ${!myMap[@]};do
 echo "key:"$key
 echo "value:"${myMap[$key]}
done

echo "七、遍歷所有value:"
for val in ${myMap[@]};do
 echo "value:"$val
done

輸出:

[root@cdh-143 shell-test]# ./map-test.sh
一、定義Map:declare -A myMap=(["myMap00"]="00" ["myMap01"]="01")
二、輸出所有的key:
my02 my03 my00 my01
三、輸出所有value:
02 03 00 01
四、輸出map的長度:
4
五、遍歷,根據(jù)key找到對應的value:
key:my02
value:02
key:my03
value:03
key:my00
value:00
key:my01
value:01
六、遍歷所有的key:
key:my02
value:02
key:my03
value:03
key:my00
value:00
key:my01
value:01
七、遍歷所有value:
value:02
value:03
value:00
value:01
[root@cdh-143 shell-test]#

到此這篇關(guān)于Linux Shell Map的用法詳解的文章就介紹到這了,更多相關(guān)Linux Shell Map內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • linux shell 根據(jù)進程名獲取pid的實現(xiàn)方法
  • linux shell 中判斷文件、目錄是否存在的方法
  • linux shell中“.” 和 “./”執(zhí)行的區(qū)別詳解
  • Linux shell 提取文件名和目錄名的方法
  • Linux利用Shell腳本部署jar包項目的完整步驟
  • Linux配置SSH和Xshell連接服務器的教程(圖解)
  • linux shell(.sh)腳本編寫和運行入門
  • 深入理解Linux shell中2>&1的含義(全網(wǎng)最全,看完就懂)
  • Linux shell實現(xiàn)壓縮多個文件代碼實例

標簽:黔南 常州 淮南 隴南 黔南 河北 通遼 河池

巨人網(wǎng)絡通訊聲明:本文標題《Linux Shell Map的用法詳解》,本文關(guān)鍵詞  Linux,Shell,Map,的,用法,詳解,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux Shell Map的用法詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于Linux Shell Map的用法詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    宜兴市| 泾川县| 神农架林区| 会宁县| 刚察县| 凤台县| 嘉兴市| 宁陵县| 海盐县| 德惠市| 凤城市| 鸡东县| 巫溪县| 喀喇沁旗| 顺义区| 桑植县| 广汉市| 镇康县| 平陆县| 浦东新区| 咸阳市| 崇仁县| 通道| 大悟县| 甘肃省| 卫辉市| 卢氏县| 佛冈县| 迁西县| 绥江县| 壶关县| 友谊县| 达州市| 将乐县| 铅山县| 万安县| 葫芦岛市| 富阳市| 福建省| 内江市| 潮安县|