あんまり大したこと無いんだけど, どうも-rオプションって, どの環境のtailにもついてるわけではないみたい.
Macのtailにはあって, Ubuntuにはなかった. GNUだから?
別にしょうもない事だけど, ちょっと書いてみた.
ルール
- 標準入力を受け取って標準出力に出力すること
tail-r.hs
import Data.List.Split (splitOn) main = getContents >>= (mapM_ putStrLn . reverse . splitOn "\n")
え? Haskellはダメ?
tail-r.js
process.stdin.resume(); process.stdin.setEncoding('utf8'); var data = ''; process.stdin.on('data', function (chunk) { data += chunk; }); process.stdin.on('end', function () { process.stdout.write(data.split('\n').reverse().join('\n')); });
え? node.jsはもっとダメ?
tail-r.py
import sys for l in reversed([x for x in sys.stdin]): sys.stdout.write(l)
書いたのはこれだけ.