Linux怎样将文本行倒序排列

1080阅读 0评论2015-12-15 ygh12311
分类: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

    除非你熟悉PERL。

    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

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


上一篇:关于shell脚本的基本语法
下一篇:没有了