Regex awk-正则表达式中的变量展开

Regex awk-正则表达式中的变量展开,regex,awk,Regex,Awk,为什么像这样的东西不起作用: echo 4 | awk --assign=abc=4 '/$abc/' 实际的例子要复杂得多。基本上我有一个正则表达式,我需要重复几次,所以我将它存储在abc中。有没有办法在/中展开awk变量?我试过单引号和双引号,每种组合。我真的需要那一行单引号,因为我有几个双引号,它实际上看起来更像是awk--assign=test=something'/$test/{这里有很多东西inc$test多次使用双引号;}'awk不在//code>和//code>正则表达式之间使

为什么像这样的东西不起作用:

echo 4 | awk --assign=abc=4 '/$abc/'

实际的例子要复杂得多。基本上我有一个正则表达式,我需要重复几次,所以我将它存储在
abc
中。有没有办法在
/
中展开awk变量?我试过单引号和双引号,每种组合。我真的需要那一行单引号,因为我有几个双引号,它实际上看起来更像是
awk--assign=test=something'/$test/{这里有很多东西inc$test多次使用双引号;}'

awk不在
//code>和
//code>正则表达式之间使用变量:

使用
~
regex运算符,以下等效项将具有相同的效果:

echo 4 | awk --assign=abc=4 '$0 ~ abc'
4

看到使用长选项真奇怪。谢谢。我在中做了一些研究,但在
/
中没有看到任何关于无变量的内容@sudo_O是的,我试了很久,但short不起作用(我想可能有区别)。我切换回
-v
,并提供了答案。它们没有区别,只是在我回答的500多个
awk
问题中,我从未见过使用它。我必须亲自检查
!我发现gawk手册很难浏览。尽管如此,我还是找到了@glennjackman和@glennjackman:谢谢你分享这个链接(我在搜索中找不到)。