Shell数组脚本练习(二)

#!/bin/bash
arg1=(`cat /root/1`)
arg2=(`awk '{print $2}' /root/2`)
n=0
if [ ${#arg1[*]} -ge ${#arg2[*]} ];then
        x=${#arg1[*]}
        for ((n=0;n<$x;n++))
                do echo ${arg1[$n]} ${arg2[$n]}
        done
else
        x=${#arg2[*]}
        for ((n=0;n<$x;n++))
                do echo ${arg1[$n]} ${arg2[$n]}
        done
fi
unset arg1
unset arg2

上面脚本用到的两个文件的内容是:

[root@localhost ~]# cat 1

1

2

3

4

5

[root@localhost ~]# cat 2

1 a

2 b

3 c

4 d

5 e

6 f


   这里主要就是用到了判断两个数组长度并对比。上面arg1数组和arg2数组比长度,得出的结论是arg1数组共有5个元素,而arg2数组共有6个元素,所以设置for循环的循环次数为arg2数组的长度。


你可能感兴趣的:(shell,数组)