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




你可能感兴趣的:(shell语法报错:“awk: division by zero”)