Få Geolocation-oplysninger om IP-adresse i Windows 10
I vores tidligere artikel så vi hvordan man får geolokationsoplysningerne for en IP-adresse ved hjælp af bash, curl og jq i Linux. Lad os se, hvordan det samme kan gøres i Windows 10. Vi kan bruge Bash på Linux eller PowerShell til samme formål.
Reklame
Igen vil vi bruge den gratis tjeneste "freegeoip.net" som en kilde til geolokationsoplysninger. Det giver en offentlig HTTP API til at søge efter geolokation af IP-adresser. Den bruger en database med IP-adresser, der er forbundet med byer sammen med andre relevante oplysninger som tidszone, breddegrad og længdegrad. Dette er meget nyttigt.
Få Geolocation-oplysninger om IP-adresse i Windows 10 ved hjælp af Bash på Ubuntu
Hvis du har Bash på Linux installeret, så kan du bruge det i dette tilfælde. Du skal installere jq-konsollens JSON-parser. Gør det som følger.
- Åbn Bash på Ubuntu. Du skal muligvis installere det først. Se følgende artikel:
Sådan aktiveres Ubuntu Bash i Windows 10Tip: det kan du tilføje Bash på Ubuntu til Explorers kontekstmenu for hurtigt at åbne den i enhver ønsket mappe. - Skriv følgende kommando:
sudo apt-get install jq
Applikationen vil blive installeret:
- Nu kan du bruge følgende kommando:
krølle http://freegeoip.net/json/119.94.116.145>tmpjson.txt && jq '.' tmpjson.txt && rm tmpjson.txt
Udgangen:
Det er den samme kommando I bruges i det native Linux-miljøder er dog en fejl. I Windows 10 har Bash on Ubuntu brudt understøttelse af pipeline-output. På grund af dette problem kan du ikke kombinere flere værktøjer for at arbejde sammen korrekt.
Så jeg brugte en midlertidig fil 'tmpjson.txt', som gemmer serversvaret og derefter bliver slettet.
Hvis du ikke er bruger af Bash på Ubuntu, kan du bruge PowerShell i stedet.
Få Geolocation-oplysninger om IP-adresse i Windows 10 ved hjælp af PowerShell
Åbn en ny forekomst af PowerShell som beskrevet her: Alle måder at åbne PowerShell i Windows 10
I stedet for krølleværktøjet kan du bruge cmdlet'en Invoke-RestMethod. Det er specielt skabt til at arbejde med REST (Representational State Transfer)-tjenester, som normalt returnerer JSON- eller XML-data.
Syntaksen er som følger:
Invoke-RestMethod -Method Get -Uri http://freegeoip.net/json/119.94.116.145
Resultatet af kommandoen vil være som følger:
Du behøver ikke engang at anvende yderligere formatering på kommandoen. Det er allerede pænt vist i outputtet.
Det er det.