日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

数组元素替换_Linux Shell 通俗简要的讲解数组操作

發布時間:2025/3/17 linux 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数组元素替换_Linux Shell 通俗简要的讲解数组操作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Shell 數組

什么是數組?學過計算機編程語言的同學們都知道,數組的特性就是一組數據類型相同的集合

Bash Shell 數組中可以存放多個值,且只支持一維數組(不支持多維數組),初始化時不需要定義數組大小,

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

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

array_name=(value1 ... valuen)

例子:

#!/bin/bash

test_array=(A B "C" D)

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

array_name[0]=value0

array_name[1]=value1

array_name[2]=value2

讀取數組

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

${array_name[index]}

實例

#!/bin/bash

test_array=(A B "C" D)

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

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

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

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

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

$ chmod +x test_arr.sh

$ ./test.sh

第一個元素為: A

第二個元素為: B

第三個元素為: C

第四個元素為: D

獲取數組的長度

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

#!/bin/bash

test_array[0]=A

test_array[1]=B

test_array[2]=C

test_array[3]=D

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

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

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

$ chmod +x test_arr.sh

$ ./test.sh

數組元素個數為: 4

數組元素個數為: 4

獲取數組中的所有元素

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

#!/bin/bash

test_array[0]=A

test_array[1]=B

test_array[2]=C

test_array[3]=D

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

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

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

數組的元素為: A B C D

數組的元素為: A B C D

刪除操作

清除某個元素:unset test_array[1],這里清除下標為1的數組;

清空整個數組:unset test_array;

分片訪問

分片訪問形式為:${數組名[@或*]:開始下標:結束下標},注意,不包括結束下標元素的值。

例如:${test_array[@]:1:4},這里分片訪問從下標為1開始,元素個數為4。

模式替換

形式為:${數組名[@或*]/模式/新值}

例如:${test_array[@]/2/98}

數組的遍歷

數組遍歷我們使用for語句來演示:

for v in ${test_array[@]}; do

echo $v;

done

通過上述,我們講解了shell中數組的定義,已經對數組的相關操作有獲取長度,讀取某下標值,對某個下標賦值,刪除、分配和替換以及遍歷。

總結

以上是生活随笔為你收集整理的数组元素替换_Linux Shell 通俗简要的讲解数组操作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。