Python kullanırdım. Günümüzde her linux gövdesi python2 yüklüdür.
Her ip adresini bir dikteye (ilişkilendirilebilir dizi) anahtar = değer çiftleri olarak ekleyin, örneğin {"12.34.56.78": 1, "87.76.43.21": 3}.
IP adresini anahtar olarak 'doğrular' ve değeri 1 arttırırsınız. Defaultdict ("ip") kullanırsanız, anahtar yoksa, varsayılan 0 değeriyle oluşturulur. zaten, defaultdict hiçbir şey yapmaz. Değer bir sonraki satırda artırılır.
#!/usr/bin/python2
infile = open("file.txt","r")
iplist = {} # create an empty dict
for line in infile:
line = line.strip() # remove newline.
if line: # if not a blank line.
iplist.setdefault(line, 0) # check for ip and add with default value of 0
iplist[line] += 1 # increment
outfile = open("out.txt","w") #open output file
for key in iplist.keys():
line = "%-15s = %s" % (key, iplist[key])
print line # print uf desired.
outfile.write(line + "\n")
çıkış dosyası:
cat out.txt
27.33.65.2 = 2
58.161.137.7 = 1
121.50.198.5 = 1
184.173.187.1 = 3
Bir komut satırı çözümü aradığınızı biliyorum, ancak gördüğünüz gibi, sadece bir düzine satır alan zarif bir şekilde biçimlendirilmiş bir ekran. Python yönetim için mükemmel bir araçtır.