cut 命令生成数组

1.假如有如下文件 params

192.168.1.0:student:id>1

192.168.1.1:teacher:id>2

 

2. cut 循环获取文件中所有ip数据

#!/bin/bash
#获取cut处理后的值集合
ips=$(cut -d ':' -f1 params)

echo $ips

echo ====================
#循环处理
for ip in $ips
do
        echo $ip
done
echo ====================

 

3.如果你想使用下标去获取文件中每一行的指定数据那么就需要把 cut 获取出来的数据加工成为数组

#!/bin/bash
#自动取数据

#获取ips地址
ips=($(cut -f1 /home/aiuap_cj/report/ips))

#获取表名称
tables=($(cut -d ':' -f1 /home/aiuap_cj/report/tables))

#获取where条件
wheres=($(cut -d ':' -f2 /home/aiuap_cj/report/tables))

#获取ip数组的长度
ip_length=${#ips[@]}

#获取table数组的长度
table_length=${#tables[@]}


echo "ip数组长度:"$ip_length
echo "table数组长度:"$table_length

echo $ips
echo $tables
echo $wheres

echo =====================
#循环遍历数组
for ((k=0;k<$ip_length;k=k+1))
do

        for ((j=0;j<$table_length;j=j+1))
        do

        echo ${ips[$k]}:${tables[$j]}:${wheres[$j]}

        done

echo -------------
done
echo =====================

 

解释:

对于第3中所讲述处理方式主要是为了处理配置文件类型的数据,它们每一行都要有相同的格式,只是具体内容不一样而已,这样就可以把很多本来要分写开的数据直接写入到一个文件处理即可。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值