Windows Tips & News

Linux'ta Bash'de IP Adresinin Coğrafi Konum bilgisini alın

click fraud protection
ÖNERİLEN: Windows sorunlarını düzeltmek ve sistem performansını optimize etmek için burayı tıklayın

Bazen bir IP adresi için coğrafi konum bilgilerini hızlı bir şekilde almanız gerekir. Linux'ta zamandan tasarruf etmek ve bu bilgileri hızlı bir şekilde almak için konsol uygulamalarının gücünü kullanabilirsiniz. Nasıl yapılabileceğini görelim.

Reklamcılık


Belirli bir IP adresi hakkında coğrafi konum bilgilerini elde etmek için uygun API'yi sağlayan bazı çevrimiçi hizmetleri kullanmanız gerekir. Yetkilendirme prosedüründen ve API anahtar yönetiminden kaçınmak için bazı kamu hizmetlerini kullanmak iyi bir fikirdir. Böyle bir hizmet FreeGeoIP.net.

IP adreslerinin coğrafi konumunu aramak için genel bir HTTP API'si sağlar. Saat dilimi, enlem ve boylam gibi diğer ilgili bilgilerle birlikte şehirlerle ilişkili bir IP adresi veritabanı kullanır. Bu çok faydalı.

Hizmet, arama sonuçlarını JSON veya XML olarak sağlayabilir. Yani, curl ile bir JSON ayrıştırıcısını birleştirirsek, gerekli bilgiyi elde edebiliriz.

En sevdiğim JSON ayrıştırıcısını kullanacağım, jq:

jq-in-reposÇok hafif ve hızlıdır.

Bizim durumumuz için sorgu aşağıdaki gibi olmalıdır:

http://freegeoip.net/json/119.94.116.145

Buradaki "json" kısmı istenen veri formatıdır. JSON'un yanı sıra XML veya CSV olabilir.

Sorguyu curl ile çalıştıralım ve çıktıyı görelim:

coğrafi sorgu-hamSonuç, okunması zor olan ham JSON çıktısıdır. Sonuç kümesinin görünümünü iyileştirmek için jq aracını kullanalım. Aşağıdaki gibi curl ile birleştirin:

kıvrılmak http://freegeoip.net/json/119.94.116.145|jq

Çıktının okunması daha kolay olacaktır:coğrafi sorgu biçimli

jq kullanarak çıktıyı filtreleyebilir ve yalnızca gerekli alanları göstermesini sağlayabilirsiniz. Aşağıdaki komut yalnızca ülke adını, enlem ve boylamı gösterecektir:

kıvrılmak http://freegeoip.net/json/119.94.116.145|jq -r '.ülke_adı,.enlem,.boylam'

coğrafi sorgu filtreliBu komutu aşağıdaki kabuk betiği olarak kaydedebilirsiniz:

#!/bin/sh. kıvırmak -s http://freegeoip.net/json/$1|jq -r '.ülke_adı,.enlem,.boylam'

Bir dahaki sefere coğrafi konum bilgisi almanız gerektiğinde, komut dosyanızı şu şekilde çalıştırabilirsiniz:

./geo.sh IP_adresi

Bu kadar.

ÖNERİLEN: Windows sorunlarını düzeltmek ve sistem performansını optimize etmek için burayı tıklayın

Windows 8.1 Arşivleri

Windows 7'de Microsoft, Görev Çubuğunu yeniden tasarladı ve daha önce Windows 7'de depolanan kısa...

Devamını oku

AIMP3'ten T-Black NRJ SeReG@ v1.0.1 dış görünümü

Bu web sitesi, siz web sitesinde gezinirken deneyiminizi geliştirmek için tanımlama bilgileri kul...

Devamını oku

AIMP3'ten skumfuk_all_in_one dış görünümü

Bu web sitesi, siz web sitesinde gezinirken deneyiminizi geliştirmek için tanımlama bilgileri kul...

Devamını oku