Wenn Sie nach einer bestimmten Zeichenfolge suchen, setzen Sie sie in Anführungszeichen:
awk '$1 == "findtext" {print $3}'
Andernfalls nimmt awk an, dass es sich um einen Variablennamen handelt.
Abhängig vom AWK Implementierung verwenden Sie == ist ok oder nicht.
Haben Sie ~ versucht ?. Wenn zum Beispiel $1 "Hallo" sein soll:
awk '$1 ~ /^hello$/{ print $3; }' <infile>
^ bedeutet $1 Start und $ ist $1 Ende.
Diese Methode verwendet Regexp, es sollte funktionieren:
awk '$2 ~ /findtext/ {print $3}' <infile>