I have a text file like this:
File1   [test]
File1   sgfg
File1   fdgsfg
File1   [rsyslog]
File1   moredata
File1   MAX_EVENTS = 256
File1   fgsfg
File1   [other]
File1   Not this
File2   [syslog]
File2   extra
File2   MAX_EVENTS = 12
With awk I would like to match field $2 when it contains [syslog]
Example this works
awk '$2~/\[syslog\]/' file
But I like to define field in advance using var.
Not working
awk -v var="[syslog]" '$2~var' file
awk -v var="\[syslog\]" '$2~var' file
awk -v var="syslog" '{test="["var"]"} $2~test' file
This works since both sub needs to be true as well as the text match, but complicated :)
awk -v var="syslog" 'sub(/^\[/,"",$2) && sub(/\]/,"",$2) && $2==var' file
 
     
     
    