Windows Tips & News

Λάβετε πληροφορίες γεωγραφικής τοποθεσίας της διεύθυνσης IP στο Bash στο Linux

ΠΡΟΤΕΙΝΕΤΑΙ: Κάντε κλικ εδώ για να διορθώσετε προβλήματα των Windows και να βελτιστοποιήσετε την απόδοση του συστήματος

Μερικές φορές χρειάζεται να λάβετε γρήγορα τις πληροφορίες γεωγραφικής θέσης για μια διεύθυνση IP. Στο Linux, μπορείτε να χρησιμοποιήσετε τη δύναμη των εφαρμογών κονσόλας για να εξοικονομήσετε χρόνο και να ανακτήσετε αυτές τις πληροφορίες γρήγορα. Ας δούμε πώς μπορεί να γίνει.

Διαφήμιση


Για να λάβετε τις πληροφορίες γεωγραφικής τοποθεσίας σχετικά με μια συγκεκριμένη διεύθυνση IP, πρέπει να χρησιμοποιήσετε κάποια ηλεκτρονική υπηρεσία που παρέχει το κατάλληλο API. Είναι καλή ιδέα να χρησιμοποιήσετε κάποια δημόσια υπηρεσία για να αποφύγετε τη διαδικασία εξουσιοδότησης και τη διαχείριση κλειδιού API. Μια τέτοια υπηρεσία είναι FreeGeoIP.net.

Παρέχει ένα δημόσιο API HTTP για αναζήτηση της γεωγραφικής θέσης των διευθύνσεων IP. Χρησιμοποιεί μια βάση δεδομένων με διευθύνσεις IP που σχετίζονται με πόλεις μαζί με άλλες σχετικές πληροφορίες όπως ζώνη ώρας, γεωγραφικό πλάτος και γεωγραφικό μήκος. Αυτό είναι πολύ χρήσιμο.

Η υπηρεσία μπορεί να παρέχει αποτελέσματα αναζήτησης ως JSON ή XML. Έτσι, αν συνδυάσουμε το curl με κάποιο αναλυτή JSON, μπορούμε να λάβουμε τις απαιτούμενες πληροφορίες.

Θα χρησιμοποιήσω τον αγαπημένο μου αναλυτή JSON, jq:

jq-in-reposΕίναι πολύ ελαφρύ και γρήγορο.

Για την περίπτωσή μας, το ερώτημα πρέπει να είναι το εξής:

http://freegeoip.net/json/119.94.116.145

Το τμήμα "json" εδώ είναι η επιθυμητή μορφή δεδομένων. Εκτός από JSON, μπορεί να είναι XML ή CSV.

Ας εκτελέσουμε το ερώτημα με curl και ας δούμε την έξοδο:

geo-query-rawΤο αποτέλεσμα είναι ακατέργαστη έξοδος JSON που είναι δύσκολο να διαβαστεί. Για να βελτιώσουμε την εμφάνιση του συνόλου αποτελεσμάτων, ας χρησιμοποιήσουμε το εργαλείο jq. Συνδυάστε το με μπούκλα ως εξής:

μπούκλα 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. μπούκλα -ς http://freegeoip.net/json/$1|jq -r '.country_name,.latitude,.longitude'

Την επόμενη φορά που θα χρειαστεί να λάβετε πληροφορίες γεωγραφικής θέσης, μπορείτε να εκτελέσετε το σενάριό σας ως εξής:

./geo.sh IP_address

Αυτό είναι.

ΠΡΟΤΕΙΝΕΤΑΙ: Κάντε κλικ εδώ για να διορθώσετε προβλήματα των Windows και να βελτιστοποιήσετε την απόδοση του συστήματος

Επαναφέρετε τον κωδικό πρόσβασης των Windows 10 με τα αρχεία regedit

Αυτός ο ιστότοπος χρησιμοποιεί cookies για να βελτιώσει την εμπειρία σας κατά την πλοήγηση στον ι...

Διαβάστε περισσότερα

Windows 10 ξέχασα τον κωδικό πρόσβασης Αρχεία

Αυτός ο ιστότοπος χρησιμοποιεί cookies για να βελτιώσει την εμπειρία σας κατά την πλοήγηση στον ι...

Διαβάστε περισσότερα

Επαναφέρετε τον κωδικό πρόσβασης των Windows 10 χωρίς τη χρήση εργαλείων τρίτων

Επαναφέρετε τον κωδικό πρόσβασης των Windows 10 χωρίς τη χρήση εργαλείων τρίτων

30 ΑπαντήσειςΕάν ξεχάσατε τον κωδικό πρόσβασης για τον λογαριασμό σας στα Windows 10 και δεν μπορ...

Διαβάστε περισσότερα