Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use awk variable in search?

Tags:

shell

awk

How to use awk variable in search?

Name="jony"
awk -v name="$Name" '/name/ {print $0}' file

this will search for string name, not for $Name which is actually jony.

like image 997
Jagan Avatar asked Oct 29 '25 15:10

Jagan


2 Answers

Correct, awk won't recogize variables in / /. You can do:

Name="jony"
awk -v name="$Name" '$0 ~ name' file

Since print is awk's default behavior we can avoid using it here.

like image 148
jaypal singh Avatar answered Oct 31 '25 08:10

jaypal singh


Hope I understood problem correctly: Why wont you try following one:

awk '/'"$Name"'/ { print } ' testfile 
like image 38
Mandar Pande Avatar answered Oct 31 '25 08:10

Mandar Pande