【shell】文本按行逆序

1.最简单的方法是使用tac

[root ~]$ seq 5 |tac
5
4
3
2
1


2.使用tr和awk。 tr把换行符替换成自定义的分隔符,awk分解替换后的字符串,并逆序输出

[root ~]$ seq 5 | tr '\n' ' ' | awk '{for(i=NF;i>0;i--) {print $i}}'
5
4
3
2
1

 

3.sed。交换模式空间和保持空间

[root ~]$ seq 5 | sed '{1!G;h;$!d}'
5
4
3
2
1

 

posted @ 2016-01-29 11:38  seyjs  阅读(1003)  评论(0编辑  收藏  举报