Windows Tips & News

Uzyskaj informacje o geolokalizacji adresu IP w Bash w systemie Linux

click fraud protection
ZALECANA: Kliknij tutaj, aby rozwiązać problemy z systemem Windows i zoptymalizować wydajność systemu

Czasami trzeba szybko uzyskać informacje o geolokalizacji adresu IP. W systemie Linux możesz wykorzystać moc aplikacji konsolowych, aby zaoszczędzić czas i szybko odzyskać te informacje. Zobaczmy, jak można to zrobić.

Reklama


Aby uzyskać informacje o lokalizacji geograficznej konkretnego adresu IP, musisz skorzystać z usługi online, która zapewnia odpowiedni interfejs API. Dobrym pomysłem jest skorzystanie z jakiejś usługi publicznej, aby uniknąć procedury autoryzacji i zarządzania kluczami API. Jedną z takich usług jest FreeGeoIP.net.

Zapewnia publiczny interfejs API HTTP do wyszukiwania geolokalizacji adresów IP. Wykorzystuje bazę danych adresów IP powiązanych z miastami wraz z innymi istotnymi informacjami, takimi jak strefa czasowa, szerokość i długość geograficzna. To bardzo przydatne.

Usługa może udostępniać wyniki wyszukiwania w formacie JSON lub XML. Tak więc, jeśli połączymy curl z jakimś parserem JSON, możemy uzyskać wymagane informacje.

Użyję mojego ulubionego parsera JSON, jq:

jq-in-reposJest bardzo lekki i szybki.

W naszym przypadku zapytanie powinno wyglądać następująco:

http://freegeoip.net/json/119.94.116.145

Część „json” to żądany format danych. Oprócz JSON może to być XML lub CSV.

Uruchommy zapytanie z curl i zobaczmy wynik:

geo-zapytanie-suroweWynikiem są surowe dane wyjściowe JSON, które są trudne do odczytania. Aby poprawić wygląd zestawu wyników, użyjmy narzędzia jq. Połącz go z lokami w następujący sposób:

kędzior http://freegeoip.net/json/119.94.116.145|jq

Wynik będzie łatwiejszy do odczytania:geo-zapytanie-formatowane

Używając jq, możesz filtrować dane wyjściowe i wyświetlać tylko wymagane pola. Następujące polecenie wyświetli tylko nazwę kraju, szerokość i długość geograficzną:

kędzior http://freegeoip.net/json/119.94.116.145|jq -r '.nazwa_kraju,.szerokość,.długość geograficzna'

filtrowane-zapytania geograficzneMożesz zapisać to polecenie jako następujący skrypt powłoki:

#!/bin/sz. curl -s http://freegeoip.net/json/$1|jq -r '.nazwa_kraju,.szerokość,.długość geograficzna'

Następnym razem, gdy będziesz potrzebować informacji o geolokalizacji, możesz wykonać swój skrypt w następujący sposób:

./geo.sh adres_IP

Otóż ​​to.

ZALECANA: Kliknij tutaj, aby rozwiązać problemy z systemem Windows i zoptymalizować wydajność systemu

Pobierz archiwum i pliki wsadowe

Ta strona korzysta z plików cookie, aby poprawić wrażenia podczas poruszania się po witrynie. Z t...

Czytaj więcej

Sergey Tkachenko, autor w Winaero

Dzisiaj firma Microsoft wydała szereg poprawek do obsługiwanej wersji systemu Windows 10. Najnows...

Czytaj więcej

Pobierz archiwa skórek Winampa

Ta strona korzysta z plików cookie, aby poprawić wrażenia podczas poruszania się po witrynie. Z t...

Czytaj więcej