dhcpd.confの並べ替え

dhcpd.confの並べ替え

私たちには共通点がありますdhcpdサンドボックスサーバーに固定IPサーバーを設定しました。サブネットの制限により、限られた範囲の固定IPアドレスを割り当てる必要がある状況を回避することはできません。

この人や他の同僚がdhcpd.confファイルにホストを追加/削除したので、ファイルはかなり長くて混乱していて、クリーンアップする必要があります。

すべてのIP請求は次のパターンに従います。

host foo {
  hardware ethernet 00:00:00:00:00:00;
  fixed-address 192.168.192.X;
}

これは可能ですかawk?それでは、どうすればいいですか?私はそれでそれほど複雑なことを試したことはありません。

答え1

はい、次の方法で実行できますawk

BEGIN { RS = "}"; }
{
    match($0, /fixed-address ([^;]+);/, array);
    data[array[1]] = $0;
}
END {
    n = asorti(data, dest);
    for (i = 1; i <= n; i++) {
        print data[dest[i]] RS;
    }
}

関連情報