■ 最後のN行だけ表示しない tail -n +Nがありならhead -nにもそんな機能がありそうだと思いman headしてみるとやはりあった。 GNU coreutilsのheadだとhead -n -Nで最後のN行は表示しないという意味になる。 % seq 5 | head -n -2 1 2 3 まあ意味的には最後からだから-でいいんだよな、きっと。 でもどうせ非互換になるなら別なオプションを用意してもよかったんじゃないかな。 ■ zshで最新のログファイルを2個だけ残してあとは消す 実はzshだと最新の2つは*(om[1,2])と表現できる。それを踏まえるとこうなる。 % for i in {0..4};touch -d @$[1367722800+i*3600*24] "foo bar.log.$i" % ls -l total 0 -rw-r--r-- 1 eban eban