2010-09-29 79 views
2

我正在編寫一個shell腳本來確保我的DNS服務器正在查找。以下是它測試的輸出:shell腳本中的正則表達式匹配

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 

的事情是我真的不知道shell腳本。確保正則表達式匹配nslookup命令輸出的最佳方法是什麼?

回答

0

的你真正想要

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 
+0

工作對我來說只是一個猜測。謝謝。 – 2010-09-30 12:47:51