$ str=Hello
$ awk 'BEGIN{print "'$str'"}'
Hello
看上去是双引号套单引号,其实真正的原因为:
这是shell的功能,shell对单引号和双引号,按从左到右的顺序成对匹配
awk命令用单引号引起来,就是防止shell对其中内容进行解释
awk '{print "'$str'"}' file
实际上就是2部分
1:awk ‘{print "’
2:‘"}’
即awk对2个单引号内的命令起作
至于$str就被shell正常解释为变量str的值
awk引用外部变量
最新推荐文章于 2021-12-06 22:50:34 发布