リストからIP /マスクをどのように印刷しますか?

リストからIP /マスクをどのように印刷しますか?

次のIPとIP /マスクのリストがあります。

1.1.1.1
2.2.2.2
192.168.0.1
223.0.0.0/15
213.32.7.0/24
...

IP/MASKラインだけを印刷するには?このコマンドを使用しsed '/^\d{1,3}(\.\d{1,3}){3}\/\d{1,2}$/p' list.txt ますが、常にすべてのリストが印刷されます。ありがとうございます!

答え1

ネットマスクに一致する数字、スラッシュ、数字を見つけることができます。次のようにします。

grep -o "\d\/\d"

または

grep -o "[0-9]\/[0-9]"

答え2

ただスラッシュでgrepしてください。grep "/" list.txt

答え3

sedがこれを理解していないので、\d正規表現=>を変更する必要があります。[0-9]sedを呼び出し、代わりに-E拡張正規表現をオンにするように選択する必要があります。{\{

sed -nEe '/^[0-9]{1,3}(\.[0-9]{1,3}){3}\/[0-9]{1,2}$/p'

関連情報