さようなら行ってください。
ポッド/ノード名と関連付けられたIPv6アドレスを含むテキストファイルがあります。両方のポッドのIPアドレスは同じです。最初のポッドはk8-worker0001c-cif-9d86d6dd4-vf9b9そして最後のポッドk8-worker0001c-ctdc-5bc95b699f-xnmrn、IPアドレスは2001:1890:e00f:3900::6
k8-worker0001c-cif-9d86d6dd4-vf9b9
2001:1890:e00f:3900::4/64 global nodad
2001:1890:e00f:3900::6/64 global
k8-worker0001c-cifpartner-64c89f8bc8-8p5pq
2001:1890:e00f:3900::10/64 global
k8-worker0001c-ctd-7d759784ff-2gk5d
2001:1890:e00f:3900::a/64 global nodad
2001:1890:e00f:3900::d/64 global
k8-worker0001c-ctd-7d759784ff-hd8jp
2001:1890:e00f:3900::c/64 global
k8-worker0001c-ctd-7d759784ff-qkk4t
2001:1890:e00f:3900::8/64 global nodad
2001:1890:e00f:3900::f/64 global
k8-worker0001c-ctd-7d759784ff-t6lwz
2001:1890:e00f:3900::5/64 global
k8-worker0001c-ctd-7d759784ff-vl8x9
2001:1890:e00f:3900::9/64 global nodad
2001:1890:e00f:3900::b/64 global
k8-worker0001c-ctdc-5bc95b699f-xnmrn
2001:1890:e00f:3900::7/64 global nodad
2001:1890:e00f:3900::6/64 global
ポッド名を含む残りのアドレスを保持しながら、重複したIPアドレスを識別するコードを1行だけ必要です。使ってみました。アッ !ボンしかし、これは私が望んでいない重複を排除します。
したがって、私は次のようなものが欲しい:
k8-worker0001c-cif-9d86d6dd4-vf9b9
2001:1890:e00f:3900::4/64 global nodad
2001:1890:e00f:3900::6/64 global DUPLICATE!
k8-worker0001c-cifpartner-64c89f8bc8-8p5pq
2001:1890:e00f:3900::10/64 global
k8-worker0001c-ctd-7d759784ff-2gk5d
2001:1890:e00f:3900::a/64 global nodad
2001:1890:e00f:3900::d/64 global
k8-worker0001c-ctd-7d759784ff-hd8jp
2001:1890:e00f:3900::c/64 global
k8-worker0001c-ctd-7d759784ff-qkk4t
2001:1890:e00f:3900::8/64 global nodad
2001:1890:e00f:3900::f/64 global
k8-worker0001c-ctd-7d759784ff-t6lwz
2001:1890:e00f:3900::5/64 global
k8-worker0001c-ctd-7d759784ff-vl8x9
2001:1890:e00f:3900::9/64 global nodad
2001:1890:e00f:3900::b/64 global
k8-worker0001c-ctdc-5bc95b699f-xnmrn
2001:1890:e00f:3900::7/64 global nodad
2001:1890:e00f:3900::6/64 global DUPLICATE!
よろしくお願いします。
ベストアンサー1
すべてのUnixシステムのすべてのシェルでawkを使用する2段階の方法:
$ $ awk '{sub(/\r$/,"")} NR==FNR{cnt[$1]++; next} {print $0 (NF && cnt[$1]>1 ? "\tDUPLICATE!" : "")}' file file
k8-worker0001c-cif-9d86d6dd4-vf9b9
2001:1890:e00f:3900::4/64 global nodad
2001:1890:e00f:3900::6/64 global DUPLICATE!
k8-worker0001c-cifpartner-64c89f8bc8-8p5pq
2001:1890:e00f:3900::10/64 global
k8-worker0001c-ctd-7d759784ff-2gk5d
2001:1890:e00f:3900::a/64 global nodad
2001:1890:e00f:3900::d/64 global
k8-worker0001c-ctd-7d759784ff-hd8jp
2001:1890:e00f:3900::c/64 global
k8-worker0001c-ctd-7d759784ff-qkk4t
2001:1890:e00f:3900::8/64 global nodad
2001:1890:e00f:3900::f/64 global
k8-worker0001c-ctd-7d759784ff-t6lwz
2001:1890:e00f:3900::5/64 global
k8-worker0001c-ctd-7d759784ff-vl8x9
2001:1890:e00f:3900::9/64 global nodad
2001:1890:e00f:3900::b/64 global
k8-worker0001c-ctdc-5bc95b699f-xnmrn
2001:1890:e00f:3900::7/64 global nodad
2001:1890:e00f:3900::6/64 global DUPLICATE!
これは、ポッド名が一意であると仮定します。