Windows Tips & News

Отримайте інформацію про геолокацію IP-адреси в Bash в Linux

Іноді вам потрібно швидко отримати інформацію про геолокацію для IP-адреси. У Linux ви можете використовувати потужність консольних програм, щоб заощадити свій час і швидко отримати цю інформацію. Давайте подивимося, як це можна зробити.

Щоб отримати інформацію про географічне розташування певної IP-адреси, вам потрібно використовувати онлайн-сервіс, який надає відповідний API. Щоб уникнути процедури авторизації та керування ключами API, доцільно використовувати деякі загальнодоступні служби. Однією з таких послуг є FreeGeoIP.net.

Він надає публічний HTTP API для пошуку геолокації IP-адрес. Він використовує базу даних IP-адрес, які пов’язані з містами, а також іншу відповідну інформацію, як-от часовий пояс, широту та довготу. Це дуже корисно.

Служба може надавати результати пошуку як JSON або XML. Отже, якщо ми об’єднаємо curl з деяким парсером JSON, ми зможемо отримати необхідну інформацію.

Я буду використовувати свій улюблений парсер JSON, jq:

Він дуже легкий і швидкий.

У нашому випадку запит має бути таким:

http://freegeoip.net/json/119.94.116.145

Частина "json" тут є бажаним форматом даних. Крім JSON, це може бути XML або CSV.

Давайте запустимо запит за допомогою curl і подивимося на результат:

Результатом є вихідний вихідний файл JSON, який важко читати. Щоб покращити вигляд набору результатів, скористаємося інструментом jq. Комбінуйте його з завитком наступним чином:

завивати http://freegeoip.net/json/119.94.116.145|jq

Результат буде легше читати:

Використовуючи jq, ви можете відфільтрувати вихідні дані та показати лише необхідні поля. Наступна команда відображатиме лише назву країни, широту та довготу:

завивати http://freegeoip.net/json/119.94.116.145|jq -r '.назва_країни,.широта,.довгота'

Ви можете зберегти цю команду як такий сценарій оболонки:

#!/bin/sh. завивати -с http://freegeoip.net/json/$1|jq -r '.назва_країни,.широта,.довгота'

Наступного разу, коли вам знадобиться отримати інформацію про геолокацію, ви можете виконати свій сценарій так:

./geo.sh IP_адреса

Це воно.

Project xCloud для Windows підтримуватиме сенсорне керування та гіроскоп

Project xCloud для Windows підтримуватиме сенсорне керування та гіроскоп

Зараз Microsoft активно працює над "Проект xCloud" додаток для Windows 10. Ця програма служить дл...

Читати далі

Скидання закріплених папок швидкого доступу в Windows 10

Скидання закріплених папок швидкого доступу в Windows 10

1 відповідьВи можете швидко скинути закріплені папки швидкого доступу в Провіднику файлів Windows...

Читати далі

Березневе оновлення мікропрограми для Surface Duo тепер доступне

Березневе оновлення мікропрограми для Surface Duo тепер доступне

Після певних проблем із послідовністю випуску щомісячних виправлень та оновлень для Surface Duo, ...

Читати далі