介绍一下gensub()的用法:
gensub(regexp, replacement, how [, target]) //返回值是要得到的字串
例如1:
awk 'BEGIN{print gensub( /foo/, "bar", 2 , "foo bar foobar")}'
和
echo "foo bar foobar"|sed -e 's/foo/bar/2' //2可以是g,等同与SED里的g,全局
以及
echo "foo bar foobar"|awk '{$0=gensub( /foo/, "bar", 2);print}'
结果是一样的
例如2:
[root@jp-test-apache qmHandle]# echo abc abc def|awk '{print gensub(/abc/,"ABC",1)}'
ABC abc def
[root@jp-test-apache qmHandle]# echo abc abc def|awk '{print gensub(/abc/,"ABC",2)}'
abc ABC def
[root@jp-test-apache qmHandle]# echo abc abc abc def|awk '{print gensub("abc","ABC",3)}'
abc abc ABC def
实例:
[root@jp-test-apache qmHandle]# pgrep http| awk '{print "kill -9 " gensub(//,"",$1)}'
kill -9 18855
kill -9 18856
kill -9 18857
kill -9 18858
kill -9 18859
kill -9 18860
评论