gsub使用变量

810阅读 0评论2015-10-22 sync_1521
分类:LINUX

简单点的
clouder@server4-120:~$ echo "unix script"| awk -v a="unix s" -v b="BASH" 'gsub(a, b)'
BASHcript
clouder@server4-120:~$ 

稍微复杂点的
clouder@server4-120:~$ echo "unix script"| awk -v a="unix" -v b="BASH" '{m=a"[^s]*s";gsub(m, b)}1'
BASHcript
clouder@server4-120:~$ 

这种写法可以类推到sub gensub 等等所有需要用到变量的函数。

clouder@server4-120:~$ var="BASH";echo "unix script"| awk 'gsub(/unix/,"'$var'")'
BASH script

这样测试也可以,更符合一般的AWK引用变量的习惯,但是变量+正则的写法建议还是用上面那种写法。


上一篇:一个开发眼中的运维
下一篇:父进程和子进程的变量传递