Соответствие регулярному выражению в сценарии оболочки - PullRequest
2 голосов
/ 29 сентября 2010

Я пишу сценарий оболочки, который гарантирует, что мой DNS-сервер ищет. Вот результат, который он тестирует:

Server:         127.0.0.1
Address:        127.0.0.1#53

Name:   galapagos.office
Address: 192.168.140.25

Все, кроме "galapagos.office", должно точно совпадать. Сама часть «galapagos.office» на самом деле не имеет никакого значения.

Я полагаю, что могу применить это регулярное выражение к выводу, чтобы сказать мне, если оно выглядит так, как я хочу:

Server: +127\.0\.0\.1\nAddress: +127\.0\.0\.1#53\n\nName:.+\nAddress: 192\.168\.140\.25

Дело в том, что я действительно не знаю сценариев оболочки. Каков наилучший способ убедиться, что регулярное выражение соответствует выводу команды nslookup?

1 Ответ

0 голосов
/ 30 сентября 2010

Просто предположение, что вы на самом деле хотите

awk '/Server/&&$2=="127.0.0.1"{f=1}
       /Address/&&$2=="127.0.0.1#53"{g=1}
       /Address/&&$2=="192.168.140.25"{h=1}
  END{if(h && g && f) print "ok"}' file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...