スポンサーリンク

awkで致命的: ゼロによる除算が試みられましたのメッセージの原因

※awkの使い方をまとめて一覧にしました。
参考:awk入門-使い方まとめ一覧-

※MACターミナル(BSD系)での動作確認です。

awkで致命的: ゼロによる除算が試みられましたのメッセージが表示されました。
原因はそのメッセージ通り、ゼロで除算していたからです。

例えば、下記のサンプルコードがあったとします。

$ cat sample.awk 
#!/bin/sh
cat in.txt | awk '		
	BEGIN{
		num1 = 5
		num2 = 0
		
		num3 = num1 / num2
		
		print "num3="num3
	}
'

下記が実行結果になります。
$ ./sample.awk 
awk: コマンドライン:6: 致命的: ゼロによる除算が試みられました

スポンサーリンク

対策

対策はなんてことはないです。
ゼロ除算していた箇所を修正すればOKですね。

例えば、下記が修正したサンプルコードです。

ゼロ除算を解消しています。

$ cat sample2.awk 
#!/bin/sh
cat in.txt | awk '		
	BEGIN{
		num1 = 5
		num2 = 2
		
		num3 = num1 / num2
		
		print "num3="num3
	}
'

下記が実行結果になります。
$ ./sample2.awk 
num3=2.5

スポンサーリンク