Windows Tips & News

LinuxのBashでIPアドレスのジオロケーション情報を取得する

IPアドレスのジオロケーション情報をすばやく取得する必要がある場合があります。 Linuxでは、コンソールアプリの機能を使用して時間を節約し、この情報をすばやく取得できます。 それがどのように行われるか見てみましょう。

特定のIPアドレスに関する地理的位置情報を取得するには、適切なAPIを提供するオンラインサービスを使用する必要があります。 承認手順とAPIキー管理を回避するために、いくつかのパブリックサービスを使用することをお勧めします。 そのようなサービスの1つは FreeGeoIP.net。

IPアドレスのジオロケーションを検索するためのパブリックHTTPAPIを提供します。 都市に関連付けられているIPアドレスのデータベースと、タイムゾーン、緯度、経度などの他の関連情報を使用します。 これはとても便利です。

このサービスは、検索結果をJSONまたはXMLとして提供できます。 したがって、curlをJSONパーサーと組み合わせると、必要な情報を取得できます。

お気に入りのJSONパーサーjqを使用します。

非常に軽量で高速です。

この場合、クエリは次のようになります。

http://freegeoip.net/json/119.94.116.145

ここでの「json」部分は、目的のデータ形式です。 JSONの他に、XMLまたはCSVにすることができます。

curlを使用してクエリを実行し、出力を確認してみましょう。

結果は、読みにくい生のJSON出力になります。 結果セットの外観を改善するために、jqツールを使用してみましょう。 次のようにcurlと組み合わせます。

カール http://freegeoip.net/json/119.94.116.145|jq

出力は読みやすくなります。

jqを使用すると、出力をフィルタリングして、必要なフィールドのみを表示させることができます。 次のコマンドは、国名、緯度、経度のみを表示します。

カール http://freegeoip.net/json/119.94.116.145|jq -r'.country_name、.latitude、.longitude '

このコマンドは、次のシェルスクリプトとして保存できます。

#!/ bin / sh。 curl -s http://freegeoip.net/json/$1|jq -r'.country_name、.latitude、.longitude '

次回ジオロケーション情報を取得する必要があるときは、次のようにスクリプトを実行できます。

./geo.sh IP_address

それでおしまい。

Windows10でのWSLLinuxディストリビューションのエクスポートとインポート

Windows10でのWSLLinuxディストリビューションのエクスポートとインポート

Windows 10バージョン1903「2019年4月の更新」には、WSL機能に加えられた多くの興味深い変更と改善が含まれています。 これらには、ストア内の追加のディストリビューション、 Fil...

続きを読む

Windows10アーカイブでUbuntuコンソールを有効にする

このWebサイトでは、Cookieを使用して、Webサイト内を移動する際のエクスペリエンスを向上させます。 これらのCookieのうち、必要に応じて分類されたCookieは、Webサイトの基本的...

続きを読む

Windows 10 Fall CreatorsUpdateの新しいプライバシーオプション

Windows 10 Fall CreatorsUpdateの新しいプライバシーオプション

Windows 10 Fall Creators Updateの継続的な開発中に、MicrosoftはOSに新しいプライバシーオプションを導入しました。 同社は、プライバシーポリシーをエンドユー...

続きを読む