Windows Tips & News

Získajte informácie o geolokácii IP adresy v Bash v systéme Linux

ODPORÚČANÉ: Kliknite sem, ak chcete opraviť problémy so systémom Windows a optimalizovať výkon systému

Niekedy potrebujete rýchlo získať informácie o geolokácii pre IP adresu. V Linuxe môžete využiť silu konzolových aplikácií na šetrenie času a rýchle získavanie týchto informácií. Pozrime sa, ako sa to dá.

Reklama


Ak chcete získať informácie o geografickej polohe o konkrétnej adrese IP, musíte použiť nejakú online službu, ktorá poskytuje príslušné rozhranie API. Je dobré použiť nejakú verejnú službu, aby ste sa vyhli autorizačnému postupu a správe kľúčov API. Jednou z takýchto služieb je FreeGeoIP.net.

Poskytuje verejné HTTP API na vyhľadávanie geolokácie IP adries. Používa databázu IP adries, ktoré sú spojené s mestami, spolu s ďalšími relevantnými informáciami, ako je časové pásmo, zemepisná šírka a dĺžka. Toto je veľmi užitočné.

Služba môže poskytovať výsledky vyhľadávania ako JSON alebo XML. Takže, ak skombinujeme curl s nejakým JSON parserom, môžeme získať požadované informácie.

Použijem svoj obľúbený analyzátor JSON, jq:

jq-in-reposJe veľmi ľahký a rýchly.

V našom prípade by mal byť dopyt nasledovný:

http://freegeoip.net/json/119.94.116.145

Časť „json“ tu predstavuje požadovaný formát údajov. Okrem JSON to môže byť XML alebo CSV.

Spustite dotaz pomocou curl a pozrime si výstup:

geo-query-rawVýsledkom je nespracovaný výstup JSON, ktorý je ťažko čitateľný. Na zlepšenie vzhľadu sady výsledkov použite nástroj jq. Skombinujte ho s curl takto:

zvlniť http://freegeoip.net/json/119.94.116.145|jq

Výstup bude ľahšie čitateľný:vo formáte geo-query

Pomocou jq môžete filtrovať výstup a nastaviť, aby zobrazoval iba požadované polia. Nasledujúci príkaz zobrazí iba názov krajiny, zemepisnú šírku a dĺžku:

zvlniť http://freegeoip.net/json/119.94.116.145|jq -r '.názov_krajiny,.zemepisná šírka,.zemepisná dĺžka'

geo-query-filtredTento príkaz môžete uložiť ako nasledujúci skript shellu:

#!/bin/sh. curl -s http://freegeoip.net/json/$1|jq -r '.názov_krajiny,.zemepisná šírka,.zemepisná dĺžka'

Keď budete nabudúce potrebovať získať informácie o geolokácii, môžete skript spustiť takto:

./geo.sh IP_adresa

To je všetko.

ODPORÚČANÉ: Kliknite sem, ak chcete opraviť problémy so systémom Windows a optimalizovať výkon systému
Ako prispôsobiť a prispôsobiť úvodnú obrazovku v systéme Windows 8.1

Ako prispôsobiť a prispôsobiť úvodnú obrazovku v systéme Windows 8.1

ODPORÚČAME: Kliknite sem, ak chcete opraviť problémy so systémom Windows a optimalizovať výkon sy...

Čítaj viac

Všetky spôsoby odhlásenia zo systému Windows 10

Všetky spôsoby odhlásenia zo systému Windows 10

13 odpovedíWindows 10 prichádza opäť s iným používateľským rozhraním, ktoré obsahuje novú aplikác...

Čítaj viac

Stiahnuť Stiahnite si predvolenú tapetu zo systému Windows 10 build 10147

Táto webová stránka používa súbory cookie na zlepšenie vášho zážitku pri prechádzaní webom. Z týc...

Čítaj viac