Windows Tips & News

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

click fraud protection
RECOMANDAT: Faceți clic aici pentru a remedia problemele Windows și pentru a optimiza performanța sistemului

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.

Publicitate


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:

jq-in-reposEste 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:

geo-interogare-rawRezultatul 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:geo-formatat-interogare

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”

geo-interogare-filtratPuteț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.

RECOMANDAT: Faceți clic aici pentru a remedia problemele Windows și pentru a optimiza performanța sistemului
Căutați mai rapid aplicațiile în meniul Start din Windows 10

Căutați mai rapid aplicațiile în meniul Start din Windows 10

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

Citeste mai mult

Cum să controlați indexarea Căutării Windows în Windows 8.1 și Windows 8

Cum să controlați indexarea Căutării Windows în Windows 8.1 și Windows 8

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

Citeste mai mult

Cum să includeți căile și partajările pentru folderele de rețea UNC în biblioteci

Cum să includeți căile și partajările pentru folderele de rețea UNC în biblioteci

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

Citeste mai mult