export SA="test" awk -v STATUS=$SA '$0 ~ STATUS{ print $1;}' file 主要目的就是想查找匹配STATUS中的字符串的行 不知道该怎么处理
c和awk处理字符串的速度比较,那个快? 如果是c,要一个文本读进内存,然后用字符串函数匹配,查找关键字。 如果是awk,则一个脚本可以处理。 但哪个速度快?耗的资源少呢? c把文本读入内存还是比较耗内存。
[code] cris@HQxTAP04:[/amls/amlbdvp1/home/cris/TEST_YHB/perl]$awk 'BEGIN{a="9" ; b="10"; print ( ("" b) < ("" a)) ? "true" : "false" ;}' false cris@HQxTAP04:[/amls/amlbdvp1/home/cris/TEST_YHB/perl]$ [/code]如题:em17:
[root@nagios-servr ssh]# awk '{if($1>244)print }' aa fd [root@nagios-servr ssh]# cat aa fd 在这个例子当中字符串比数值大 在网络一篇文章中看到 字符串与0相加,会被当作数值 str="123" awk中,用str与90比较,会发现str比90小,这里作的是字符串比较。 str+0会被当作数值 ,用 str+0与90比较即可。 字符串比数值小 [root@nagios-servr ssh]# cat aa 192.168.2.13 fdf.abc.dd.fd 192.128.99. 192.168.444.343 192.168.33....
echo "21" |awk '{a=sprintf("%d",$0);if(a>8) {print "ok" } }' 在unix下,可以输出ok,但在linux下,没有输出?
每三行字符串拼接成一行 awk 'BEGIN {T=""} {T=T""$0;} NR%3==0 {print T;T=""}' filename 发现不能正常显示, 字符串拼接应该如何处理?
我想问一下,如何用awk对下面的字符串进行分割并转换成整型的 106 103 1873 336 418 111 7321 1031 1199 293 222 135 973792 258555 1105585 316697 2288 544 590412 166907 330218 89549 1188415 347893 818798 239114 419332 101940 394633 109907 376429 94964 236292 63862 210382 55891 173026 43239 141829 35654 130761 32121 450476 123291 542939 203259 122064 109648 98354 90492 86129 79060 2549 59 100 889 236 418...
awk '$1=="01234张三风abcdef" {print substr($1,1,7)}' 1.txt 输出为“01234张三”,但是我想让它输出为“01234张”,需要在环境变量中进行哪些设置?