avahi を使用して、ネットワーク範囲の IP アドレスのリストを作成しました。入力された情報は、sed を使用して洗練され、次の出力が得られます。
Initial data = address = [xxx.xxx.xxx.xxx]
Refined data = xxx.xxx.xxx.xxx
そのためのコマンドは次のとおりです。
avahi-browse -alrt | grep -w address | sort -u | sed -e 's/address = //' | sed -e 's/\[//' | sed -e 's/\]//'
これはほとんどの場合正しく機能しますが、奇妙な場合に xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx のようなアドレスがリストに表示され、省略したいと思います。
正規表現または何かを使用して、データが常に有効な IP、つまり xxx.xxx.xxx.xxx と一致することを確認できることはわかっていますが、これについてどうすればよいかわかりません。どんな助けでも大歓迎です。
このコマンドは、bash スクリプトを使用して Linux で実行されます。有効な IP アドレスのみを xxx.xxx.xxx.xxx 形式で返したいと思います。