tac の代用


最後から先頭へ向かって処理したいので、tac の代用はないかということですが、sed で以下のようなものを使っているそうです。

sed -e '1!G;h;$!d'

以下の Juergen Kahrs の回答はどうかと思いますけど・・・。

awk '{print NR, $0}' data_file.txt | sort -n -r | awk '{$1=""; print $0}'

ついでに Ed Morton も・・・。

awk '{print NR, $0}' data_file.txt | sort -n -r | awk 'sub(/[[:digit:]]+ /,"")'

awk の中でクローズするなら以下のように書きますが、tac の代用は Perl が良いかと思います。

gawk '{a[NR]=$0}END{for(i=NR;i>0;i--){print a[i]}}' infile