日期:2014-05-16  浏览次数:20727 次

【转载】linux shell 数组建立及使用技巧


详解请见:http://suo.iteye.com/blog/1118825


从上面讲到的,大家可以发现linux shell 的数组已经很强大了,常见的操作已经绰绰有余了。

shell 按行读取并保存成数组



从ip.txt里读取IP.然后把IP地址赋值到一个数组里.
IP文件如下:
Address:  220.181.26.163
Address:  220.181.26.174
Address:  220.181.26.175
Address:  220.181.26.176
Address:  220.181.19.228
Address:  220.181.19.229
Address:  220.181.26.161
Address:  220.181.26.162



方法一:
for x in ` awk '{print $2}' ip.txt `
{
echo $x
}
方法二:
ARRAY=($(awk '{print $2}' ip.txt))
方法三:
n=0;while read a b;do array[$n]=$b;((n++));done<ip.txt

方法四:
n=1
while ((n<=$(cat ip.txt|wc -l)))
do
    ipaddr[$n]=$(cat ip.txt|sed -n "${n}p"|awk '{print $2}')
    ((n+=1))
done
n=`expr $n - 1`