Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

AWKで表示する行範囲を指定する

AWKでは、ANDやORを使った条件指定ができます。
これと行番号を意味するNRを組み合わせることで行範囲を指定することができます。

実際のところ

たとえば……4行目から7行目までを表示したいなんてケースがあった場合、

$ seq 1 100 | awk '( NR < 3 ) && (NR < 8) { print NR, ": ", "target" }'

と、わりかし直感的な書き方ができます。

ただし、AWKの性質上、末尾みたいな指示は得意ではないそうです。
何が何でもやりたい場合END部分に書くなんて荒技もあるそうですがtね…
その場合は、素直にパイプ処理の合わせ技なりで解決しましょう。