組込変数 NR/NF
awkには、組込変数がいくつか用意されています。
すでに"フィールド"で紹介している、$2、$3 も組込変数のひとつです。
また、$0は、レコード(行)全体を出力します。
NR:読込んだレコード(行)の行番号を出力できます。
NF:読込んだレコード(行)内のフィールド(列)の数を出力できます。
<sample.txt> 前回ファイルの1行目と3行目に地方名を追加
関東 中部 東海 近畿 九州
中部 東海 近畿 関東
東海 近畿 中部 東海 北海道
近畿 四国 中国 九州
関東 東北 北海道 中部
---------------
行番号を表示
gawk '[print NR,$0}' sample.txt>awktest.txt
3行目だけを表示
gawk 'NR==3[print NR,$0}' sample.txt>awktest.txt
== は、等号と同じです。
フィールド(列)数が5のレコード(行)を表示
gawk 'NF==5[print NR,$0}' sample.txt>awktest.txt
| 固定リンク
コメント