说明:蓝色=命令名称
浅绿=命令参数
浅蓝=选项
紫色=目录
系统环境:CentOS 6.2 i686
一、行数统计方法
1、系统命令:wc -l filename
2、grep方法:grep -c "" filename
3、sed方法:sed -n '$=' filename
4、awk方法:awk 'END{print NR}' filename
二、效率测试
生成测试所需文件:awk 'BEGIN{for(i=0;i<10000000;i++)print i}'>>test
说明:用上文中介绍的方法分别对test文件进行三测测试统并统计时间,最后取平均值进行比较
1、wc方法: time wc -l test
用时:0.234s 0.242s 0.237s
平均:0.237667s
2、grep方法:time grep -c "" test
用时:1.503s 1.340s 1.414s
平均:1.419000s
3、sed方法:time sed -n '$=' test
用时:2.268s 2.258s 2.344s
平均:2.290000s
4、awk方法:time awk 'END{print NR}' test
用时:1.637s 1.638s 1.649s
平均:1.641330s
总结:
wc的效率远高于其他方法,具体效率:wc>grep>awk>sed
补充:wc用法
语法:wc [选项] 文件
说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。
该命令各选项含义如下:
- c 统计字节数。
- l 统计行数。
- w 统计字数。
这些选项可以组合使用
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)