1.1.2 數組定義
學習目標
這一節,我們從 基礎知識、簡單實踐、小結 三個方面來學習。
基礎知識
數組創建
在Shell中,用括號來表示數組,數組元素用“空格”符號分割開。定義數組的語法格式:array_name=(value1 ... valuen)
注意:基于元素的格式,主要有單行定義、多行定義、單元素定義、命令定義等多種樣式
語法解讀
單行定義array_name=(value0 value1 value2 value3)多行定義array_name=(value0value1value2value3)單元素定義array_name[0]=value0array_name[1]=value1array_name[2]=value2注意:單元素定義的時候,可以不使用連續的下標,而且下標的范圍沒有限制。命令定義就是value的值以命令方式來獲取file_array=($(ls /tmp/))
簡單實踐
實踐1-單行定義
定制數據數組
[root@localhost ~]# num_list=(123,234,345,456,567)
[root@localhost ~]# echo ${num_list[0]}
123,234,345,456,567數據元素之間使用空格隔開
[root@localhost ~]# num_list=(123 234 345 456 567)
[root@localhost ~]# echo ${num_list[0]}
123
[root@localhost ~]# echo ${num_list[@]}
123 234 345 456 567
實踐2-多行定義
定制數組
[root@localhost ~]# class_one=(
> zhangsan
> lisi
> wangwu
> zhaoliu
> )查看數組元素
[root@localhost ~]# echo ${class_one[0]}
zhangsan
[root@localhost ~]# echo ${class_one[@]}
zhangsan lisi wangwu zhaoliu
實踐3-單元素定義
定制數組
[root@localhost ~]# mix_list[0]=nihao
[root@localhost ~]# mix_list[2]=345
[root@localhost ~]# mix_list[4]="1.23,4.56"查看數組元素
[root@localhost ~]# echo ${mix_list[1]}
[root@localhost ~]# echo ${mix_list[@]}
nihao 345 1.23,4.56批量多元素定義
[root@localhost ~]# string_list=([0]="value-1" [3]="value-2")
[root@localhost ~]# echo ${string_list[@]}
value-1 value-2
[root@localhost ~]# echo ${!string_list[@]}
0 3
實踐4-命令定義
定制數組元素
[root@localhost ~]# file_array=$(ls *.sh)查看數組元素
[root@localhost ~]# echo ${file_array[0]}
count_head_feet.sh host_network_test.sh memory_info.sh simple_jumpserver.sh simple_login.sh simple_login_string.sh site_healthcheck.sh test_argnum.sh
[root@localhost ~]# echo ${file_array[1]}
[root@localhost ~]# echo ${file_array[2]}
[root@localhost ~]# echo ${file_array[@]}
count_head_feet.sh host_network_test.sh memory_info.sh simple_jumpserver.sh simple_login.sh simple_login_string.sh site_healthcheck.sh test_argnum.sh注意:對于命令的數組創建來說,它只有一個元素
小結