Linux怎样将文本行倒序排列


 

1. 命令方法:  

nl filename | sort -nr | cut -f2 这个方法很unix风格,使用多命令组合完成某种功能是典型的unix特点

 

单命令: 在linux下,首先想到的就是 tac命令 ,可将文本文件的文本行倒序排列输出

2. AWK方法: 

awk '{line[NR]=$0}END{for(i=NR;i>0;i--)print line}' filename  这个利用了AWK的数组功能

 

3. PERL方法:

 perl -e 'print reverse <>' filename

 

4. SED方法

sed '1!G;h;$!d' filename 

这个操作很经典,如果你能看懂这行命令中的sed函数的意义,那对sed就有基本的了解了。  

5. VI方法

vi指令 :g/^/m0 这个方法没有想到,真是简便实用

 

6. shell方法

#!/bin/bash                                                                                                                            

  revread() {                                                                                                                                                

     local line                                                                                                                                                     

  read line || return 0                                                                                                                                       

     revread                                                                                                                                                    

     echo $line                                                                       }                                                                                                                                                    

revread <file 

利用了shell编程中的函数递归。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM