运维服务小笔记

If not now,when?If not me,who?

一月 23rd, 2015

awk,cut分割字符效率测试

297 views, Server, by 川望.
通过#或者@来分割字符串,可以通过awk或者cut来实现,awk可以通过正则,或者split来实现。
都能实现目标,那么他们的效率怎么样呢?我们来测试一下

[root@nagios fx]# time awk -F[#@] ‘{print $4}’ www>/dev/null
real    1m9.570s
user    1m9.202s
sys     0m0.340s
[root@nagios fx]# time awk -F# ‘{split($3,A,”@”);{print A[2]}}’ www>/dev/null
real    0m22.342s
user    0m22.123s
sys     0m0.220s
[root@nagios fx]# time cut -d# -f 3 www | cut -d@ -f2 >/dev/null
real    0m17.283s
user    0m26.298s
sys     0m0.486s
如此来看,2次cut的效率都大大高于awk
awk的内置函数效率大大高于自己正则匹配
实现同样的目标,用不同的方式得到完全不一样的效率~


转载请注明来源:awk,cut分割字符效率测试

Back Top

发表评论

电子邮件地址不会被公开。 必填项已用*标注

注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。

无觅相关文章插件,快速提升流量