字符串列表定义方法1:
a=(f1 f2 f3 f4)
for i in ${a[*]}#遍历每一个列表值for i in ${a[@]}#等价与上一句
实例:
#!bin/bash
a=(f1 f2 f3 f4)for i in ${a[*]}; do echo ”$i“ if [ "$i" == "f1" ]; then#判断字符串是否相等,注意前后要有空格,否则变为赋值语句 echo ”f1 finded“ else echo "NOTFOUND" fidone字符串列表定义方法2:
a[1]=f1
a[2]= f2a[3]= f3a[4]= f4实例2:
#!bin/bash
a[1]=f1a[2]=f2a[3]=f3a[4]=f4for i in ${a[*]}; do echo ”$i“ if [ "$i" == "f1" ]; then echo ”f1 finded“ else echo "NOTFOUND" fidone每个列表元素的
echo "${a[2]}"
#!bin/basha[1]=f1a[2]=f2a[3]=f3a[4]=f4echo "${a[1]}"echo "${a[2]}"
1 获取下标为n的元素:
1 | variable[n] |
而且不存在数组下标溢出的情况,如果 n>= 数组的长度,那么为空,不会报错。
2 获取数组长度
1 | ${#variable[@]} |
或者
1 | ${#variable[*]} |
那么如何用for遍历呢?一共有两种方式:
直接遍历每一个值
1 for i in ${variable[@]}; do
1 2 | # do something.... done |
2遍历每一个值的下标
for i in $(seq 0 ${#variable[@]}); do
1 2 3 | e=${variable[$i]} # do something.... done |
以上两种方法 把 @ 换成 * 也行。