Gaukite IP adreso geografinės vietos informaciją sistemoje „Windows 10“.
Ankstesniame straipsnyje matėme kaip gauti IP adreso geografinės vietos informaciją naudojant bash, curl ir jq sistemoje Linux. Pažiūrėkime, kaip tą patį galima padaryti „Windows 10“. Tuo pačiu tikslu galime naudoti „Bash“ sistemoje „Linux“ arba „PowerShell“.
Vėlgi, kaip geografinės vietos informacijos šaltinį naudosime nemokamą paslaugą „freegeoip.net“. Tai suteikia viešą HTTP API, leidžiančią ieškoti IP adresų geografinės vietos. Ji naudoja IP adresų, susietų su miestais, duomenų bazę ir kitą svarbią informaciją, pvz., laiko juostą, platumą ir ilgumą. Tai labai naudinga.
Gaukite IP adreso geografinės vietos informaciją sistemoje „Windows 10“, naudodami „Bash“ Ubuntu
Jei „Linux“ sistemoje įdiegėte „Bash“, galite jį naudoti šiuo atveju. Turite įdiegti jq konsolės JSON analizatorių. Atlikite tai taip.
- Atidarykite „Bash“ „Ubuntu“. Pirmiausia gali tekti jį įdiegti. Žiūrėkite šį straipsnį:
Kaip įjungti „Ubuntu Bash“ sistemoje „Windows 10“.Patarimas: galite pridėkite Bash on Ubuntu į Explorer kontekstinį meniu kad greitai atidarytumėte jį bet kuriame norimame aplanke. - Įveskite šią komandą:
sudo apt-get install jq
Programa bus įdiegta:
- Dabar galite naudoti šią komandą:
garbanoti http://freegeoip.net/json/119.94.116.145>tmpjson.txt && jq '.' tmpjson.txt && rm tmpjson.txt
Išvestis:
Tai ta pati I komanda naudojamas gimtojoje Linux aplinkojetačiau yra gedimas. „Windows 10“ sistemoje „Bash on Ubuntu“ nutraukė konvejerio išvesties palaikymą. Dėl šios problemos negalite derinti kelių įrankių, kad jie tinkamai veiktų.
Taigi naudojau laikiną failą „tmpjson.txt“, kuriame saugomas serverio atsakymas ir kuris ištrinamas.
Jei nesate „Bash“ vartotojas „Ubuntu“, galite naudoti „PowerShell“.
Gaukite IP adreso geografinės vietos informaciją sistemoje „Windows 10“, naudodami „PowerShell“.
Atidarykite naują „PowerShell“ egzempliorių, kaip aprašyta čia: Visi būdai atidaryti „PowerShell“ sistemoje „Windows 10“.
Vietoj garbanojimo įrankio galite naudoti cmdlet Invoke-RestMethod. Jis specialiai sukurtas darbui su REST (reprezentacinės būsenos perdavimo) paslaugomis, kurios paprastai grąžina JSON arba XML duomenis.
Sintaksė yra tokia:
Invoke-RestMethod -Method Get -Uri http://freegeoip.net/json/119.94.116.145
Komandos rezultatas bus toks:
Jums net nereikia taikyti papildomo komandos formatavimo. Jis jau gražiai parodytas išvestyje.
Viskas.