ネットワーク上のすべてのホストのホスト名として、2番目の列を持つファイルがあります。
Host example.com (x.x.x.x) is up (0.0041s latency).
など。ただし、2 番目の列の多くの行は、ホスト名ではなくホスト名の IP で始まります。たとえば、次のようになります。
Host a.b.c.d is up (0.022s latency).
それでは、2番目の列でIPで始まるすべての行をどのように取得できますか?
答え1
そしてawk
:
awk '$2~/[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/' file
$2
正規表現と比較して2番目のフィールドを確認します。[0-9]
数字と一致し、+
1つ以上の数字と一致し、\.
単一点と一致します。