当前位置 主页 > 服务器问题 > Linux/apache问题 >

    Linux将文本行倒序的操作方法

    栏目:Linux/apache问题 时间:2019-06-25 16:53

      Linux怎样将文本行倒序排列?
     
      1.命令方法:
     
      nlfilename|sort-nr|cut-f2
     
      这个方法很unix风格,使用多命令组合完成某种功能是典型的unix特点。
     
      单命令:
     
      在linux下,首先想到的就是tac命令,可将文本文件的文本行倒序排列输出。
     
      2.AWK方法:
     
      awk'{line[NR]=$0}END{for(i=NR;i>0;i--)printline}'filename
     
      这个利用了AWK的数组功能。
     
      3.PERL方法:
     
      perl-e'printreverse<>'filename
     
      除非你熟悉PERL。
     
      4.SED方法
     
      sed'1!G;h;$!d'filename
     
      这个操作很经典,如果你能看懂这行命令中的sed函数的意义,那对sed就有基本的了解了。
     
      www.2cto.com
     
      5.VI方法
     
      vi指令:g/^/m0
     
      这个方法没有想到,真是简便实用。
     
      6.shell方法
     
      #!/bin/bash
     
      revread(){
     
      localline
     
      readline||return0
     
      revread
     
      echo$line
     
      }
     
      revread<file
     
      利用了shell编程中的函数递归。