テキストを指定行以降だけ出力する方法のメモ。
ときどきテキストの指定行以降だけを出力することがあるんだけど tail コマンドとか sed コマンドを使うと簡単にできるのでメモしておく。
指定行以降を出力する方法
ときどきテキストの指定行以降だけを出力することがあるんだけど tail コマンドとか sed コマンドを使うと簡単にできるのでメモしておく。
tail -n オプションを +
付きで指定する
テキストが10行あるんだけど1〜3行目はヘッダーが入ってて実際のデータが3行目から始まるときとかは3行目以降のデータだけを出力したいことがある。
そういうときは tail コマンドを tail -n +3
のように -n
オプションを +
記号付きで指定すると3行目以降のテキストだけが出力する。
$ seq 10 | tail -n +3 3 4 5 6 7 8 9 10
sed を使う
sed コマンドで 1,2d
みたいに指定して1〜2行を削除するでも同じことができる。
$ seq 10 | sed -e '1,2d' 3 4 5 6 7 8 9 10
awk を使う
awk コマンドで NR>=3
みたいに指定して3行目以降だけ処理するでも同じことができる。
$ seq 10 | awk 'NR>=3' 3 4 5 6 7 8 9 10