కొన్నిసార్లు మీరు IP చిరునామా కోసం జియోలొకేషన్ సమాచారాన్ని త్వరగా పొందాలి. Linux లో, మీరు మీ సమయాన్ని ఆదా చేయడానికి మరియు ఈ సమాచారాన్ని త్వరగా తిరిగి పొందడానికి కన్సోల్ అనువర్తనాల శక్తిని ఉపయోగించవచ్చు. ఇది ఎలా చేయవచ్చో చూద్దాం.
ప్రకటన
నిర్దిష్ట IP చిరునామా గురించి భౌగోళిక స్థాన సమాచారాన్ని పొందడానికి, మీరు తగిన API ని అందించే కొన్ని ఆన్లైన్ సేవలను ఉపయోగించాలి. ప్రామాణీకరణ విధానం మరియు API కీ నిర్వహణను నివారించడానికి కొంత ప్రజా సేవను ఉపయోగించడం మంచిది. అలాంటి ఒక సేవ FreeGeoIP.net.
ఇది IP చిరునామాల భౌగోళిక స్థానాన్ని శోధించడానికి పబ్లిక్ HTTP API ని అందిస్తుంది. ఇది సమయ మండలి, అక్షాంశం మరియు రేఖాంశం వంటి ఇతర సంబంధిత సమాచారంతో పాటు నగరాలతో అనుబంధించబడిన IP చిరునామాల డేటాబేస్ను ఉపయోగిస్తుంది. ఇది చాలా ఉపయోగకరంగా ఉంటుంది.
ఈ సేవ శోధన ఫలితాలను JSON లేదా XML గా అందించగలదు. కాబట్టి, మేము కొన్ని JSON పార్సర్తో కర్ల్ను మిళితం చేస్తే, మేము అవసరమైన సమాచారాన్ని పొందవచ్చు.
ఫోర్ట్నైట్లో ఎన్ని గంటలు ఆడిందో చూడటం ఎలా
నేను నా అభిమాన JSON పార్సర్ను ఉపయోగిస్తాను, jq:
ఇది చాలా తేలికైనది మరియు వేగంగా ఉంటుంది.
మా విషయంలో, ప్రశ్న ఈ క్రింది విధంగా ఉండాలి:
http://freegeoip.net/json/119.94.116.145
ఇక్కడ 'json' భాగం కావలసిన డేటా ఫార్మాట్. JSON తో పాటు, ఇది XML లేదా CSV కావచ్చు.
ప్రశ్నను కర్ల్తో నడుపుదాం మరియు అవుట్పుట్ చూద్దాం:
ఫలితం ముడి JSON అవుట్పుట్, ఇది చదవడం కష్టం. ఫలిత సమితి యొక్క రూపాన్ని మెరుగుపరచడానికి, jq సాధనాన్ని ఉపయోగిద్దాం. ఈ క్రింది విధంగా కర్ల్తో కలపండి:
కర్ల్ http://freegeoip.net/json/119.94.116.145|jq
అవుట్పుట్ చదవడం సులభం అవుతుంది:
Jq ని ఉపయోగించి, మీరు అవుట్పుట్ను ఫిల్టర్ చేయవచ్చు మరియు అవసరమైన ఫీల్డ్లను మాత్రమే చూపిస్తుంది. కింది ఆదేశం దేశం పేరు, అక్షాంశం మరియు రేఖాంశం మాత్రమే ప్రదర్శిస్తుంది:
కర్ల్ http://freegeoip.net/json/119.94.116.145|jq -r '.కంట్రీ_పేరు, .లాటిట్యూడ్, .లాంగిట్యూడ్'
మీరు ఈ ఆదేశాన్ని క్రింది షెల్ స్క్రిప్ట్గా సేవ్ చేయవచ్చు:
#! / bin / sh curl -s http://freegeoip.net/json/|jq -r '.country_name, .latitude, .longitude'
తదుపరిసారి మీరు జియోలొకేషన్ సమాచారం పొందవలసి వచ్చినప్పుడు, మీరు మీ స్క్రిప్ట్ను ఇలా అమలు చేయవచ్చు:
./geo.sh IP_address
అంతే.