zoukankan      html  css  js  c++  java
  • Linux如何显示文件指定行数的内容;显示第一行、中间几行和最后几行

    1、tail -n +/-数字 文件名

    2、head -n 数字 文件名

    3、sed -n "开始行,结束行p" 文件名

    4、sed -n '1p;20,40p; "显示第一行和20到40行'

    5、sed -n 7p file_name : 显式第7行

    6、cat file_name | awk 'NR==1 || NR==2 || NR==10'  显式第1、2、10行

     统计行数的几种方法:

    wc -l  test.txt显示文件的行数

    sed -n '$=' test.txt 显示文件的行数  -n表示只打印匹配的结果

    grep -c "" filename        -c, --count               print only a count of matching lines per FILE

    awk 'END{print NR}' filename   awk的BEGIN和END表示匹配开始之前匹配结束之后执行的动作

    效率对比:

    生成测试所需文件:awk 'BEGIN{for(i=0;i<10000000;i++)print i}'>>test

    wc方法: time wc -l test

    1、time wc -l test  用时0.026s
    1000000 test

    real    0m0.014s
    user    0m0.009s
    sys    0m0.003s

    2、grep方法,用时0.080s

    time grep -c "" test
    1000000

    real    0m0.041s
    user    0m0.037s
    sys    0m0.002s

    3、用时0.159s

    time sed -n '$=' test
    1000000

    real    0m0.080s
    user    0m0.073s
    sys    0m0.006s

    4、用时0.095s

    time awk 'END{print NR}' test
    1000000

    real    0m0.049s
    user    0m0.042s
    sys    0m0.004s

    结论:wc>grep>awk>sed

    参考:1、http://www.linuxidc.com/Linux/2012-06/63680.htm

    2、http://man.linuxde.net/sed

    3、http://man.linuxde.net/awk

  • 相关阅读:
    Explain执行计划
    SQL优化(SQL + 索引)
    SQL(含索引)
    分组聚合 merger
    服务分组 group
    多注册中心 registry
    多协议 protocol
    常用协议 —— webservice://
    常用协议 —— http://
    最强AngularJS资源合集
  • 原文地址:https://www.cnblogs.com/shengulong/p/7892242.html
Copyright © 2011-2022 走看看