列の要素を別の列の 1 要素項目で繰り返し除算するにはどうすればよいですか?
例: 入力:
2 2
2.2
4
44
期待される出力:
1
1.1
2
22
標準の除算はawk '{print $1/$2}' Input > Output
機能しません(存在しないすべての$2
要素を反復処理するため)
答え1
除数を取得するには、2 列目の 1 行目のみの値を考慮する必要があります。FNR
これに使用できます。awk では、FNR
現在のファイル内のレコード番号 (実際には行番号) を参照します。2 列目の 1 行目を読み取って除数を格納し、格納された値で 1 列目の要素を割ります。
awk 'FNR==1 {d=$2} {print $1/d}' Input > Output