如何反转文件中的行顺序?

我想颠倒文本文件(或stdin)中行的顺序,保留每行的内容。


所以,即从以下开始:


foo

bar

baz

我想结束


baz

bar

foo

是否有标准的UNIX命令行实用程序?


qq_遁去的一_1
浏览 831回答 3
3回答

呼唤远方

另外值得一提:( tac咳嗽,反向cat)。部分的coreutils。将一个文件翻转到另一个文件中tac a.txt > b.txt

米脂

有着名的sed技巧:# reverse order of lines (emulates "tac")# bug/feature in HHsed v1.5 causes blank lines to be deletedsed '1!G;h;$!d'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# method 1sed -n '1!G;h;$p'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# method 2(说明:在非初始行前加上保持缓冲区,交换行和保持缓冲区,在末尾打印出行)或者(从更快的执行)来自awk单行:awk '{a[i++]=$0} END {for (j=i-1; j>=0;) print a[j--] }' file*如果你不记得了,perl -e 'print reverse <>'在具有GNU实用程序的系统上,其他答案更简单,但并非全世界都是GNU / Linux ......
打开App,查看更多内容
随时随地看视频慕课网APP