Windows Tips & News

Pridobite podatke o geolokaciji naslova IP v Bash v Linuxu

PRIPOROČANO: Kliknite tukaj, če želite odpraviti težave z operacijskim sistemom Windows in optimizirati delovanje sistema

Včasih morate hitro pridobiti informacije o geolokaciji za naslov IP. V Linuxu lahko uporabite moč konzolnih aplikacij, da prihranite čas in hitro pridobite te informacije. Poglejmo, kako je to mogoče storiti.

Oglas


Za pridobitev informacij o geografski lokaciji o določenem naslovu IP morate uporabiti spletno storitev, ki ponuja ustrezen API. Dobro je uporabiti kakšno javno storitev, da se izognete postopku avtorizacije in upravljanju ključev API. Ena takih storitev je FreeGeoIP.net.

Zagotavlja javni API HTTP za iskanje geolokacije naslovov IP. Uporablja bazo podatkov IP naslovov, ki so povezani z mesti, skupaj z drugimi ustreznimi informacijami, kot so časovni pas, zemljepisna širina in dolžina. To je zelo koristno.

Storitev lahko zagotovi rezultate iskanja kot JSON ali XML. Torej, če združimo curl z razčlenjevalnikom JSON, lahko dobimo zahtevane informacije.

Uporabil bom svoj najljubši razčlenjevalnik JSON, jq:

jq-in-reposJe zelo lahek in hiter.

V našem primeru bi morala biti poizvedba naslednja:

http://freegeoip.net/json/119.94.116.145

Del "json" tukaj je želeni format podatkov. Poleg JSON je lahko XML ali CSV.

Zaženimo poizvedbo s curl in si oglejmo rezultat:

geo-query-rawRezultat je neobdelani izhod JSON, ki ga je težko brati. Za izboljšanje videza niza rezultatov uporabimo orodje jq. Kombinirajte ga s kodrom na naslednji način:

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

Izhod bo lažje prebrati:oblikovano z geopoizvedbo

Z uporabo jq lahko filtrirate izhod in prikažete samo zahtevana polja. Naslednji ukaz bo prikazal samo ime države, zemljepisno širino in dolžino:

curl http://freegeoip.net/json/119.94.116.145|jq -r '.ime_države,.širina,.dolžina'

geo-poizvedba-filtriranaTa ukaz lahko shranite kot naslednji skript lupine:

#!/bin/sh. curl -s http://freegeoip.net/json/$1|jq -r '.ime_države,.širina,.dolžina'

Ko boste naslednjič morali pridobiti podatke o geolokaciji, lahko svoj skript izvedete takole:

./geo.sh IP_naslov

To je to.

PRIPOROČANO: Kliknite tukaj, če želite odpraviti težave z operacijskim sistemom Windows in optimizirati delovanje sistema

Tema Nature HD#29 za Windows 8

To spletno mesto uporablja piškotke za izboljšanje vaše izkušnje med krmarjenjem po spletnem mest...

Preberi več

Dnevna tema Bing #40 za Windows 8

To spletno mesto uporablja piškotke za izboljšanje vaše izkušnje med krmarjenjem po spletnem mest...

Preberi več

Kako omogočiti način podjetja v Internet Explorerju 11

Kako omogočiti način podjetja v Internet Explorerju 11

6 odgovorovV najnovejši izdaji Internet Explorerja 11, as nedavna odkritja, obstaja funkcija zdru...

Preberi več