Comment extraire des adresses IP uniques du fichier journal Apache sur Linux

Comment extraire des adresses IP uniques du fichier journal Apache sur Linux

Question

Comment extraire toutes les adresses IP de mon journal HTTPD. J'ai besoin d'extraire uniquement les adresses IP uniques de mon fichier journal Apache.

Voici une entrée de journal APACH mon exemple:

Xxx.64.70.Xxx - - [26 / mars / 2011: 00: 28: 23 -0700] "get / http / 1.1 "403 4609" - "" Mozilla / 5.0 (x11; u; Linux i686; en-us) Applewebkit / 534.16 (khtml, comme gecko) Chrome / 10.0.648.204 Safari / 534.16 " 

Répondre

Au format d'entrée du journal Apache que vous avez fourni, le moyen le plus simple d'extraire dans les adresses IP de ce type d'entrées de journal Apache est d'utiliser une combinaison de commandes awk, tri et Uniq. Nous devons d'abord obtenir une longue liste d'adresses IP. Cela peut être fait avec la commande awk:

$ awk 'print $ 1' apache_log 

La prochaine étape consiste à trier les adresses IP avec la commande de tri:

$ awk 'print $ 1' apache_log | trier 

Et enfin, nous n'obtenons que l'adresse IP unique en diffusant la sortie de la commande ci-dessus à Uniq:

$ awk 'print $ 1' apache_log | Trier | uniq 

Cela créera une longue liste de courtes adresses IP, chacune sur une ligne séparée. Si vous avez l'intention de compter les visiteurs uniques sur votre site Web, redirigez simplement la sortie vers wc -l.

$ awk 'print $ 1' apache_log | Trier | Uniq | wc -l 

Tutoriels Linux connexes:

  • Choses à installer sur Ubuntu 20.04
  • Guide de dépannage général GNU / Linux pour les débutants
  • Manipulation de Big Data pour le plaisir et le profit Partie 2
  • Conseils de ligne de commande bash utiles et exemples de trucs - Partie 1
  • Scénarios: opérations arithmétiques
  • Comment configurer le partage de serveur Samba sur Ubuntu 22.04 Jammy…
  • Mint 20: Mieux que Ubuntu et Microsoft Windows?
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Comment formater le disque dans Linux
  • Fichiers de configuration Linux: 30 premiers