shell语法报错:“awk: division by zero”

文本如下

[root@mx31 /home/mail/t/i/a/domains/tianyacapital.com]# shm_read -a |grep '^DOMAIN'|head -10|awk '{print $5"\t"$15"\t"$18}'
360champ.com 21 47
3fbiz.com 11 0
468724.cn 21 0
5u588.com 21 0
678game.com 16 0
9joycar.com 21 2
abdullahtrade.com 0 0
aiwi.com.cn 11 0
almoson.com.cn 11 0
alome.com.cn 61 16


我要计算$3与$2的比值,出现如下报错:原因是被除数出现了0,在数学里被除数是0的话,除法是无效的

[root@mx31 ~/crontab/statitstic]# shm_read -a |grep '^DOMAIN'|head -10| awk '{print $5"\t"$15"\t"$18}' |awk '{print $1"\t"$3/$2}'

360champ.com 2.2381
3fbiz.com 0
468724.cn 0
5u588.com 0
678game.com 0
9joycar.com 0.0952381
awk: division by zero
input record number 7, file

source line number 1

后来加以判断就可以了

shm_read -a |grep '^DOMAIN'|head -10| awk '{print $5"\t"$15"\t"$18}' |awk '{if ( $2 != "0" ){print $1"\t"$3/$2}}'
360champ.com 2.2381
3fbiz.com 0
468724.cn 0
5u588.com 0
678game.com 0
9joycar.com 0.0952381
aiwi.com.cn 0
almoson.com.cn 0
alome.com.cn 0.262295
andy-karey.com 1.36364




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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值