やりたいこと
こういうファイルがあったとして、bar
以降の行だけ出力したい。
qiita.txt
hoge
foo
bar
buzz
piyo
一度しか出現しないケース
それsedで出来るよ。
cat /tmp/qiita.txt | sed -n '/bar/,$p'
bar
buzz
piyo
これでも良さそうだけど、超絶カッコ悪い。
cat /tmp/qiita.txt | tac | sed '/bar/q' | tac
bar
buzz
piyo
2回以上出現するケース
2回以上出現するケースで使い分けたらいいよ。
qiita2.txt
hoge
foo
bar
buzz
piyo
hoge
foo
bar
buzz
piyo
- 初出以降全部出力
cat /tmp/qiita2.txt | sed -n '/bar/,$p'
bar
buzz
piyo
hoge
foo
bar
buzz
piyo
- 最後の出現以降全部出力
cat /tmp/qiita2.txt | tac | sed '/bar/q' | tac
bar
buzz
piyo