Windows Tips & News

Obțineți informații de localizare geografică a adresei IP în Bash în Linux

click fraud protection

Uneori trebuie să obțineți rapid informațiile de localizare geografică pentru o adresă IP. În Linux, puteți folosi puterea aplicațiilor de consolă pentru a vă economisi timp și pentru a prelua rapid aceste informații. Să vedem cum se poate face.

Pentru a obține informații despre locația geografică despre o anumită adresă IP, trebuie să utilizați un serviciu online care oferă API-ul corespunzător. Este o idee bună să folosiți un serviciu public pentru a evita procedura de autorizare și gestionarea cheilor API. Un astfel de serviciu este FreeGeoIP.net.

Oferă un API public HTTP pentru a căuta geolocalizarea adreselor IP. Utilizează o bază de date cu adrese IP care sunt asociate cu orașele, împreună cu alte informații relevante, cum ar fi fusul orar, latitudinea și longitudinea. Acest lucru este foarte util.

Serviciul poate oferi rezultate de căutare ca JSON sau XML. Deci, dacă combinăm curl cu un analizor JSON, putem obține informațiile necesare.

Voi folosi analizatorul meu JSON preferat, jq:

Este foarte ușor și rapid.

Pentru cazul nostru, interogarea ar trebui să fie după cum urmează:

http://freegeoip.net/json/119.94.116.145

Porțiunea „json” de aici este formatul de date dorit. Pe lângă JSON, poate fi XML sau CSV.

Să rulăm interogarea cu curl și să vedem rezultatul:

Rezultatul este o ieșire JSON brută, care este greu de citit. Pentru a îmbunătăți aspectul setului de rezultate, să folosim instrumentul jq. Combinați-l cu bucle după cum urmează:

răsuci http://freegeoip.net/json/119.94.116.145|jq

Rezultatul va fi mai ușor de citit:

Folosind jq, puteți filtra rezultatul și îl puteți face să afișeze numai câmpurile necesare. Următoarea comandă va afișa numai numele țării, latitudinea și longitudinea:

răsuci http://freegeoip.net/json/119.94.116.145|jq -r „.nume_țară,.latitudine,.longitudine”

Puteți salva această comandă ca următorul script shell:

#!/bin/sh. curl -s http://freegeoip.net/json/$1|jq -r „.nume_țară,.latitudine,.longitudine”

Data viitoare când trebuie să obțineți informații de localizare geografică, puteți executa scriptul astfel:

./geo.sh adresa_IP

Asta e.

Prima lansare a Edge 104 este acum în canalul Dev, Edge 103 în versiune beta

Prima lansare a Edge 104 este acum în canalul Dev, Edge 103 în versiune beta

RECOMANDAT: Faceți clic aici pentru a remedia problemele Windows și pentru a optimiza performanța...

Citeste mai mult

Windows 10 Build 19044.1741 este disponibil în Canalul de previzualizare a lansării

Windows 10 Build 19044.1741 este disponibil în Canalul de previzualizare a lansării

2 RăspunsuriO versiune rafinată a actualizării KB5014023 este disponibilă pentru Insiders care ru...

Citeste mai mult

Windows 11 Build 25131 lansat în canalul Dev

Windows 11 Build 25131 lansat în canalul Dev

Lasa un raspunsMicrosoft lansează Windows 11 Insider Preview Build 25131 către canalul Dev. Anunț...

Citeste mai mult