shell 脚本测试

待处理的文件aaa.log内容:

09/26    00:00:08    116.41834259033203    39.90071597768346    116.60888671875    35.38904996691167    502516.707409
09/26    00:01:34    121.13089397549632    30.98941357306606    121.55966117978099    31.149880293437714    44614.8976635
09/26    00:01:51    117.12383329868318    39.243494180634734    117.12383329868318    39.243494180634734    0
09/26    00:03:55    117.12383329868318    39.243494180634734    117.12383329868318    39.243494180634734    0
09/26    00:04:07    106.70314550399783    26.556866721950268    106.72096878290178    26.58711559252519    3806.24567829
09/26    00:05:23    117.12383329868318    39.243494180634734    117.12383329868318    39.243494180634734    0
09/26    00:05:38    114.18694585561754    36.686433818538205    115.66599234938623    37.7350984521996    175556.820747
09/26    00:05:57    121.13089397549632    30.98941357306606    121.55966117978099    31.149880293437714    44614.8976635


处理要求:

最后一列的数值小于50000的行,且之抽取第三列至第六列的内容,保存到另一个文件BBB.txt


shell脚本程序:

#!/bin/bash
echo '  ' > BBB.txt
while read LINE     #逐行读取文件“/bak/log/aaalog”
do
   distance=$(echo "$LINE"| awk -F '\t' '{print $7}')       #將每行的第七列取出赋值给distance, 赋值语法: temp=$(赋值内容) 或者 temp=`赋值内容`, 注意不是单引号或双引号。     

   #if [[ $distance < 3000 ]]; then
   #   echo "$LINE"| awk -F '\t' '{print $3,$4,$5,$6}' >> BBB.txt
   #fi
   [ $distance < 50000 ] && echo "$LINE"| awk -F '\t' '{print $3,$4,$5,$6}' >> BBB.txt    #取出第七列小于50000的行且將指定列输出到文件BBB.txt
done < /bak/log/aaalog


#注意:

#条件比较语法: if[比较条件]]; then...要做的事情 fi

#或者:[比较条件] && 要做的事情。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值