Использование Grep для поиска двух слов в одной строке

Когда я использовал nic с созданием ресурсов, это сработало:

Ресурс pcs create VirtIP ocf :Heartbeat :IPaddr2 ip=10.163.131.6 cidr _маска сети=24 nic=eth0 :1 операционный интервал монитора=30 с

0
20.10.2019, 04:31
2 ответа

Может быть:

grep "ONT.*MONDAY" file
0
28.04.2021, 23:28

Если вы знаете, что слово ONTнаходится в 3-м столбце, а слово MONDAY— в 5-м:

$ awk '$3 == "ONT" && $5 == "MONDAY"' file
93104      TEAM     ONT     LAX   MONDAY

Это основано на том, что значения в столбцах не содержат встроенных пробелов. Приведенная выше команда awkсравнивает значения столбцов 3 и 5 с искомыми словами в виде строк и выводит любую строку, прошедшую проверку.

Для соответствия ONTв 3-м или 4-м столбце и MONDAYв 5-м:

$ awk '($3 == "ONT" || $4 == "ONT") && $5 == "MONDAY"' file
93104      TEAM     ONT     LAX   MONDAY
40990      ACTI     PHX     ONT   MONDAY

Если вы использовали grep, вы не были бы уверены, что два слова соответствуют полным словам или в правильных столбцах (, если вы не слишком усложнили регулярное выражение ).

0
28.04.2021, 23:28

Теги

Похожие вопросы