实例一:基本定义 运用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