linux / solaris +検証ファイルに有効なIPアドレスが重複しています

linux / solaris +検証ファイルに有効なIPアドレスが重複しています

ファイルで冗長IPを見つけるための最良の方法は何ですか? (このスクリプトにはkshスクリプトがあり、冗長IPを検証する関数を作成する必要があります。)

たとえば、config_IP.txt ファイルに IP - 192.1926.23.52 が 2 回存在する場合は、「duplicate IP - xxx.xxx.xxx.xxx」を印刷する必要があります。

  • ソリューションはkshまたはperl oneliner、sed、awkなどを使用できます。

ファイルの種類は次のとおりです。

追加のconfig_IP.txt

 # NETWORK adminstration


 192.192.23.150 192.192.23.120
 192.192.23.152 192.192.23.52      
 192.192.23.153 192.192.23.53      
 192.192.23.154 192.192.23.54      


 #NETWORK private

 192.192.23.170  192.192.23.122         
 192.192.23.172  192.192.23.126  
 192.192.23.174  192.192.23.123     
 192.192.23.177  192.192.23.121  



# NETWORK oracle internal


152.3.4.12 152.3.4.12 
152.3.4.14 152.3.4.16 


# NETWORK oracle ext

152.3.4.10 152.3.4.19 

ベストアンサー1

質問を正しく理解しているかどうかはわかりませんが、上記のファイルで重複するIPを見つけるには、1行に1つのIPを入力して実行すると、各行のsortuniq -cに同じ数の行が報告されます。

cat config_IP.txt | sed "s/\s\s*/\n/g" | sort | uniq -c

このファイルに基づいて他のIPを確認するには、次のようにグループ化できますcat

( cat config_IP.txt; echo "12.34.56.78 90.101.121.131" ) \
    | sed "s/\s\s*/\n/g" | sort | uniq -c

grepソートを開始する前に、IPアドレスを含まない行をフィルタリングするエントリを追加することもできます。

おすすめ記事