1.定义list

listTest=(value1 value2 value3)

2.获取List的总个数

echo ${#listTest[@]}

输出: 3

3.获取list的某个元素值,这很类似于python中的切片操作。

输出第2个元素:

echo ${listTest[1]}

输出:value2

输出倒数第三个元素:

echo ${listTest[-3]}

输出:value1

4.一次输出list的所有值

echo ${listTest[@]}

输出:value1 value2 value3

5.for循环逐个打印所有list的值。

(ps:对于shell脚本,缩进是个大问题。因为很多需要缩进的地方(比如if,for语句)都不长,所有很多人都懒得去缩进,而且很多人不习惯用函数,导致缩进功能被弱化。其实正确的缩进是很重要的,尤其是在写函数的时候,否则我们在阅读的时候很容易把函数体跟直接执行的命令搞混.)

for i in ${listTest[@]}
    do
    echo $i
    done

建议缩进四个空格,不要使用tab键。

输出:

value1

value2

value3

6.将list的每个元素都转换成以空格分隔各元素的字符串

string=${listTest[*]}
echo $string

输出: value1 value2 value3

更多推荐

Shell脚本list史上最全教程