linux-shell编程中awk变量的使用

(27) 2023-12-12 19:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说linux-shell编程中awk变量的使用,希望能够帮助你!!!。

前言

在linux写shell脚本的时候,经常会使用awk处理文本以及进行运算。既然是脚本就会使用到变量,但是awk处理文本里面是无法直接使用shell变量,需要awk通过-v参数进行变量传递的。

linux-shell编程中awk变量的使用_https://bianchenghao6.com/blog__第1张


参数传递变量

TIMEOUT=60

awk -v timeout="$TIMEOUT" 'BEGIN{FS="|"} {if ($7>timeout) print $2 }'

注意:这里timetout是不能加$,只是声明timeout变量。


linux-shell编程中awk变量的使用_https://bianchenghao6.com/blog__第2张

也可以有其他方法

var="shell"

awk 'BEGIN{print "'$var'"}'

这种写法其实际是双括号变为单括号的常量,传递给了awk,这里就会遇到空格的问题,会导致awk出现异常,因此就需要多加一个双引号进行处理

var="bash shell"

awk 'BEGIN{print "'"$var"'"}'


总结

根据我的习惯是使用参数传递变量的方式,这样子不会因为引号出现混乱。

linux-shell编程中awk变量的使用_https://bianchenghao6.com/blog__第3张

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复