实例一:基本定义 运用shell的数组

#!/bin/bash#by xxx at 2016#定义数组 并赋值log_file_name=(access error licess)#获取数组的长度log_file_num=${#log_file_name[@]}echo $log_file_num for  ((i=0;i<$log_file_num;i++))do#获取数组的下标为i的值,数组的下标是从0开始的    echo ${log_file_name[i]}done

第二:深入一点的

数组数据来自命令

# files=($(ls))# echo ${files[@]} # echo ${files[@]} | tr " " "\n"

第三:遍历数组

for ((i=0;i<${#array[@]};i++));do echo ${array[$i]};done

第四:很数组有关的题目:

bash for 循环打印下面这句话中字母大于6的单词

str="i am oldboy teacher welcome to oldboy trainning class."for sub in `echo $str`#for sub in `echo $str| tr " " "\n"`do    if [ ${#sub} -ge 6 ];then        echo $sub    fidone

总结:

最常用的两种定义数组的方法

1 array=(value1 value2 valu3 valuen)

2 array=($(cmd))

最常用的获取数组的内容

1 获取长度echo ${#array[@]}

2 获取元素 echo ${array[index]}

最常用的循环打印

for ((i=0;i<${#array[@]};i++))

for f in ${array[@]}

扩展:有关字符串长度的方法:

1 子串的方法

2 wc -c 的方法

3 expr length

4 awk 的length函数

[ scripts]$ a="oldgirl"

[ scripts]$ echo ${#a}

7

[ scripts]$ echo -n "$a" | wc -c

7

[ scripts]$ 

[ scripts]$ expr length $a

7