在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Shell腳本程序開發-數組(四)

嵌入式加油站 ? 來源:谷動谷力 ? 2023-10-22 17:50 ? 次閱讀


c9239c8e-70af-11ee-939d-92fbcf53809c.jpg

數組中可以存放多個值。Bash Shell 只支持一維數組(不支持多維數組),初始化時不需要定義數組大?。ㄅc PHP 類似)。

與大部分編程語言類似,數組元素的下標由 0 開始。

定義數組

Shell 數組用括號來表示,元素用"空格"符號分割開,語法格式如下:

array_name=(value1 value2 ... valuen)


實例

創建一個簡單的數組 my_array:

#!/bin/bash

# author:谷動谷力

# url:bbs.sunsili.com

my_array=(A B "C" D "谷動谷力")


我們也可以使用數字下標來定義數組:

array_name[0]=value0

array_name[1]=value1

array_name[2]=value2

讀取數組

讀取數組元素值的一般格式是:

${array_name[index]}


實例

以下實例通過數字索引讀取數組元素:

vim test_array.sh

#!/bin/bash

# author:谷動谷力

# url:bbs.sunsili.com

my_array=(A B "C" D "谷動谷力")

echo "第一個元素為: ${my_array[0]}"

echo "第二個元素為: ${my_array[1]}"

echo "第三個元素為: ${my_array[2]}"

echo "第四個元素為: ${my_array[3]}"

echo "第五個元素為: ${my_array[4]}"

輸入

:wq

保存退出

添加可執行權限

chmod +x test_array.sh

執行腳本,輸出結果如下所示:

第一個元素為: A

第二個元素為: B

第三個元素為: C

第四個元素為: D

第五個元素為: 谷動谷力

關聯數組

Bash 支持關聯數組,可以使用任意的字符串、或者整數作為下標來訪問數組元素。

關聯數組使用 declare 命令來聲明,語法格式如下:

declare -A array_name

-A 選項就是用于聲明一個關聯數組。

關聯數組的鍵是唯一的。

以下實例我們創建一個關聯數組 site,并創建不同的鍵值:

實例

declare -A site=(["baidu"]="www.baidu.com" ["sunsili"]="www.sunsili.com" ["taobao"]="www.taobao.com")

我們也可以先聲明一個關聯數組,然后再設置鍵和值:

declare -A site

site["baidu"]="www.baidu.com"

site["sunsili"]="www.sunsili.com"

site["taobao"]="www.taobao.com"


也可以在定義的同時賦值。

訪問關聯數組元素可以使用指定的鍵,格式如下:

array_name["index"]

以下實例我們通過鍵來訪問關聯數組的元素:

declare -A site

site["baidu"]="www.baidu.com"

site["sunsili"]="www.sunsili.com"

site["taobao"]="www.taobao.com"

echo ${site["sunsili"]}

執行腳本,輸出結果如下所示:

www.sunsili.com

獲取數組中的所有元素

使用@或 * 可以獲取數組中的所有元素,例如:

#!/bin/bash

# author:谷動谷力

# url:bbs.sunsili.com

my_array=(A B "C" D "谷動谷力")

echo "第一個元素為: ${my_array[0]}"

echo "第二個元素為: ${my_array[1]}"

echo "第三個元素為: ${my_array[2]}"

echo "第四個元素為: ${my_array[3]}"

echo "第五個元素為: ${my_array[4]}"

echo "數組的元素為: ${my_array[*]}"

echo "數組的元素為: ${my_array[@]}"

執行腳本,輸出結果如下所示:

數組的元素為: A B C D 谷動谷力

數組的元素為: A B C D 谷動谷力


實例

declare -A site

site["baidu"]="www.baidu.com"

site["sunsili"]="www.sunsili.com"

site["taobao"]="www.taobao.com"

echo "數組的元素為: ${site[*]}"

echo "數組的元素為: ${site[@]}"

執行腳本,輸出結果如下所示:

數組的元素為: www.taobao.com www.baidu.com www.sunsili.com

數組的元素為: www.taobao.com www.baidu.com www.sunsili.com


在數組前加一個感嘆號 ! 可以獲取數組的所有鍵,例如:

declare -A site

site["baidu"]="www.baidu.com"

site["sunsili"]="www.sunsili.com"

site["taobao"]="www.taobao.com"

echo "數組的鍵為: ${!site[*]}"

echo "數組的鍵為: ${!site[@]}"


執行腳本,輸出結果如下所示:

數組的鍵為: taobao baidu sunsili

數組的鍵為: taobao baidu sunsili


獲取數組的長度

獲取數組長度的方法與獲取字符串長度的方法相同,例如:

#!/bin/bash

# author:谷動谷力

# url:bbs.sunsili.com

my_array=(A B "C" D "谷動谷力")

echo "第一個元素為: ${my_array[0]}"

echo "第二個元素為: ${my_array[1]}"

echo "第三個元素為: ${my_array[2]}"

echo "第四個元素為: ${my_array[3]}"

echo "第五個元素為: ${my_array[4]}"

echo "數組元素個數為: ${#my_array[*]}"

echo "數組元素個數為: ${#my_array[@]}"


執行腳本,輸出結果如下所示:

數組元素個數為: 5

數組元素個數為: 5








審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • PHP
    PHP
    +關注

    關注

    0

    文章

    454

    瀏覽量

    27184
  • Shell
    +關注

    關注

    1

    文章

    371

    瀏覽量

    23865
  • Bash
    +關注

    關注

    0

    文章

    57

    瀏覽量

    10365

原文標題:【Shell腳本】Shell腳本程序開發 -- 數組(四)

文章出處:【微信號:嵌入式加油站,微信公眾號:嵌入式加油站】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    shell腳本進階】幾個常用的shell進階腳本

    shell腳本進階】幾個常用的shell進階腳本
    的頭像 發表于 09-19 08:59 ?2145次閱讀
    【<b class='flag-5'>shell</b><b class='flag-5'>腳本</b>進階】幾個常用的<b class='flag-5'>shell</b>進階<b class='flag-5'>腳本</b>

    linux shell腳本分享

    今天浩道跟大家分享shell腳本硬核干貨,可以說是拿來即用序列!
    發表于 02-17 09:13 ?498次閱讀

    Linux Shell腳本入門到實戰詳解

    Linux Shell腳本入門到實戰詳解
    發表于 02-17 15:03 ?724次閱讀

    Linux shell腳本分享

    今天浩道跟大家分享幾個Linux運維中常用到的shell腳本!
    發表于 07-18 09:53 ?644次閱讀
    Linux <b class='flag-5'>shell</b><b class='flag-5'>腳本</b>分享

    shell腳本的相關資料分享

    腳本提供數組、循環、條件判斷的等功能shell腳本一般是Linux運維或者系統管理員要掌握的,作為嵌入式開發人員,只需要掌握
    發表于 12-23 06:17

    linux shell 腳本入門

    1. Linux 腳本編寫基礎 1.1 語法基本介紹 1.1.1 開頭 程序必須以下面的行開始(必須方在文件的第一行): #!/bin/sh 符號#!用來告訴系統它后面的參數是用來執行該文件的程序
    發表于 11-07 15:44 ?11次下載

    嵌入式和物聯網的shell腳本學習指南之shell腳本入門免費下載

    本文檔的主要內容詳細技術的是嵌入式和物聯網的shell腳本學習指南之shell腳本入門免費下載。
    發表于 09-11 17:15 ?20次下載
    嵌入式和物聯網的<b class='flag-5'>shell</b><b class='flag-5'>腳本</b>學習指南之<b class='flag-5'>shell</b><b class='flag-5'>腳本</b>入門免費下載

    shell腳本最簡明的教程

    Shell腳本,就是利用Shell的命令解釋的功能,對一個純文本的文件進行解析,然后執行這些功能,也可以說Shell腳本就是一系列命令的集合
    的頭像 發表于 10-16 11:27 ?5048次閱讀
    <b class='flag-5'>shell</b><b class='flag-5'>腳本</b>最簡明的教程

    109個實用shell腳本分享

    Shell腳本,就是利用Shell的命令解釋的功能,對一個純文本的文件進行解析,然后執行這些功能,也可以說Shell腳本就是一系列命令的集合
    的頭像 發表于 03-16 08:58 ?2833次閱讀

    Linux開發_Makefile規則與Shell腳本語言

    介紹Linux下Makefile編程知識點,Shell腳本知識點。
    的頭像 發表于 09-17 15:40 ?1528次閱讀

    shell腳本基礎知識

    shell腳本是一個文件,里面存放的是特定格式的指令,系統可以使用腳本解析器翻譯或解析指令并執行(無需編譯),shell腳本的本質是
    的頭像 發表于 04-17 15:00 ?1266次閱讀

    Linux Shell腳本經典案例分享

    ? 作為一名 Linux 運維工程師,會寫好的腳本不僅能提高工作效率,還能有更多的時間做自己的事。最近在網上沖浪的時候,發現大家對Shell腳本都有“心結”,要么覺得自己寫出來不好看,要么根本無從下手。 下面分享249個真實
    發表于 06-16 14:03 ?760次閱讀
    Linux <b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>經典案例分享

    如何利用shell進行腳本程序的設計?

    利用Shell進行腳本程序的設計可以按照以下步驟進行: 選擇Shell解釋器:在Unix和Linux系統中,通常會默認安裝一個或多個Shell
    的頭像 發表于 11-08 10:17 ?797次閱讀

    shell并行執行java腳本

    Shell是一種用于解釋執行命令的腳本語言,而Java是一種跨平臺的面向對象編程語言。在某些情況下,我們可能需要在Shell腳本中執行Java程序
    的頭像 發表于 11-08 10:29 ?854次閱讀

    Linux從零到精通:最簡單的Shell腳本入門教程

    case語句 shell變量數組 shell腳本前言 |為什么學習shell編程 Shell
    的頭像 發表于 12-05 09:56 ?1269次閱讀
    Linux從零到精通:最簡單的<b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>入門教程
    主站蜘蛛池模板: 四虎永久精品视频在线 | 免费网站日本永久免费观看 | 国产久爱青草视频在线观看 | 91av视频免费在线观看 | 国产成人精品日本亚洲语音1 | 久久夜色精品国产尤物 | 国产哺乳期奶水avav | 日本三级2018亚洲视频 | 日韩在线视频www色 日韩在线视频免费观看 | 精品色综合 | 六月丁香中文字幕 | 147西西人体大胆免费网 | 午夜视频啪啪 | 亚洲a视频在线 | 亚洲成人免费看 | 国产精品午夜国产小视频 | 久久久久久9 | 免费被视频网站在线观看 | 欧美顶级xxxxbbbb| 日日干天天操 | 成人欧美精品大91在线 | 去毛片 | 影音先锋在线亚洲精品推荐 | 黄色午夜视频 | 久久亚洲综合中文字幕 | 国产白白白在线永久播放 | 综合天天| 欧美三级久久 | 亚洲精品91大神在线观看 | 国产精品视频永久免费播放 | 色综合久久中文字幕网 | 日本一区免费在线观看 | 日日摸夜夜爽夜夜爽出水 | 国产精品一区二区三区免费视频 | 国产a三级三级三级 | 天天精品| 国产成人精品系列在线观看 | 成人爽爽激情在线观看 | 日本免费高清 | 亚洲欧美日韩特级毛片 | 亚洲欧美网站 |