Windows Tips & News

Obtenez des informations de géolocalisation de l'adresse IP dans Bash sous Linux

CONSEILLÉ: Cliquez ici pour résoudre les problèmes de Windows et optimiser les performances du système

Parfois, vous avez besoin d'obtenir rapidement les informations de géolocalisation d'une adresse IP. Sous Linux, vous pouvez utiliser la puissance des applications de console pour gagner du temps et récupérer rapidement ces informations. Voyons comment cela peut être fait.

Publicité


Pour obtenir les informations de géolocalisation sur une adresse IP spécifique, vous devez utiliser un service en ligne qui fournit l'API appropriée. C'est une bonne idée d'utiliser un service public pour éviter la procédure d'autorisation et la gestion des clés API. L'un de ces services est FreeGeoIP.net.

Il fournit une API HTTP publique pour rechercher la géolocalisation des adresses IP. Il utilise une base de données d'adresses IP associées aux villes ainsi que d'autres informations pertinentes telles que le fuseau horaire, la latitude et la longitude. C'est très utile.

Le service peut fournir des résultats de recherche au format JSON ou XML. Donc, si nous combinons curl avec un analyseur JSON, nous pouvons obtenir les informations requises.

J'utiliserai mon analyseur JSON préféré, jq :

jq-en-reposIl est très léger et rapide.

Dans notre cas, la requête doit être la suivante :

http://freegeoip.net/json/119.94.116.145

La partie "json" ici est le format de données souhaité. Outre JSON, il peut s'agir de XML ou CSV.

Exécutons la requête avec curl et voyons le résultat :

géo-requête-bruteLe résultat est une sortie JSON brute qui est difficile à lire. Pour améliorer l'apparence du jeu de résultats, utilisons l'outil jq. Combinez-le avec curl comme suit:

boucle http://freegeoip.net/json/119.94.116.145|jq

La sortie sera plus facile à lire :formaté par géo-requête

En utilisant jq, vous pouvez filtrer la sortie et lui faire afficher uniquement les champs requis. La commande suivante affichera uniquement le nom du pays, la latitude et la longitude :

boucle http://freegeoip.net/json/119.94.116.145|jq -r '.nom_pays,.latitude,.longitude'

géo-requête-filtréeVous pouvez enregistrer cette commande sous le script shell suivant :

#!/bin/sh. boucle -s http://freegeoip.net/json/$1|jq -r '.nom_pays,.latitude,.longitude'

La prochaine fois que vous aurez besoin d'informations de géolocalisation, vous pourrez exécuter votre script comme ceci :

./geo.sh adresse_IP

C'est ça.

CONSEILLÉ: Cliquez ici pour résoudre les problèmes de Windows et optimiser les performances du système
Fichier CAB de langue MUI

Fichier CAB de langue MUI

CONSEILLÉ: Cliquez ici pour résoudre les problèmes de Windows et optimiser les performances du sy...

Lire la suite

Microsoft va acquérir les opérations américaines de TikTok

Microsoft va acquérir les opérations américaines de TikTok

CONSEILLÉ: Cliquez ici pour résoudre les problèmes de Windows et optimiser les performances du sy...

Lire la suite

Google commence à lutter contre les publicités gourmandes en ressources dans Chrome

Google commence à lutter contre les publicités gourmandes en ressources dans Chrome

CONSEILLÉ: Cliquez ici pour résoudre les problèmes de Windows et optimiser les performances du sy...

Lire la suite