Awk соответствует столбцу с использованием переменных и границ слов - PullRequest
0 голосов
/ 26 марта 2020

Я пытаюсь напечатать строки, где первый столбец содержит совпадение с «var», используя границы.

awk -F '|' '$1 ~ /\<$var\>/ { print $0 }'

Работает, как и ожидалось, без попытки использования переменной.

echo "18,19,20|hello world" |  awk -F '|' '$1 ~ /\<18\>/ { print $0 }'
18,19,20|hello world

Как мне это сделать, используя мою переменную?

1 Ответ

2 голосов
/ 26 марта 2020
awk -F '|' -v var="$var" '$1 ~ ("\\<"var"\\>")'

См. https://www.gnu.org/software/gawk/manual/gawk.html#Computed -Regexps

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...