சில நேரங்களில் நீங்கள் ஒரு ஐபி முகவரிக்கான புவி இருப்பிட தகவலை விரைவாகப் பெற வேண்டும். லினக்ஸில், உங்கள் நேரத்தைச் சேமிக்கவும், இந்த தகவலை விரைவாக மீட்டெடுக்கவும் கன்சோல் பயன்பாடுகளின் சக்தியைப் பயன்படுத்தலாம். அதை எவ்வாறு செய்ய முடியும் என்று பார்ப்போம்.
விளம்பரம்
ஒரு குறிப்பிட்ட ஐபி முகவரியைப் பற்றிய புவி இருப்பிடத் தகவலைப் பெற, பொருத்தமான ஏபிஐ வழங்கும் சில ஆன்லைன் சேவையைப் பயன்படுத்த வேண்டும். அங்கீகார நடைமுறை மற்றும் ஏபிஐ விசை நிர்வாகத்தைத் தவிர்க்க சில பொது சேவையைப் பயன்படுத்துவது நல்லது. அத்தகைய ஒரு சேவை FreeGeoIP.net.
ஐபி முகவரிகளின் புவி இருப்பிடத்தைத் தேட இது ஒரு பொது HTTP API ஐ வழங்குகிறது. இது நேர மண்டலம், அட்சரேகை மற்றும் தீர்க்கரேகை போன்ற பிற தொடர்புடைய தகவல்களுடன் நகரங்களுடன் தொடர்புடைய ஐபி முகவரிகளின் தரவுத்தளத்தைப் பயன்படுத்துகிறது. இது மிகவும் பயனுள்ளதாக இருக்கும்.
சேவையானது JSON அல்லது XML ஆக தேடல் முடிவுகளை வழங்க முடியும். எனவே, சில JSON பாகுபடுத்தலுடன் சுருட்டை இணைத்தால், தேவையான தகவலைப் பெறலாம்.
ஃபோர்ட்நைட்டில் எத்தனை மணி நேரம் விளையாடியது என்பதைப் பார்ப்பது எப்படி
எனக்கு பிடித்த JSON பாகுபடுத்தியைப் பயன்படுத்துவேன், jq:
இது மிகவும் இலகுரக மற்றும் வேகமானது.
எங்கள் விஷயத்தில், வினவல் பின்வருமாறு இருக்க வேண்டும்:
http://freegeoip.net/json/119.94.116.145
இங்கே 'json' பகுதி விரும்பிய தரவு வடிவமாகும். JSON தவிர, இது எக்ஸ்எம்எல் அல்லது சிஎஸ்வி ஆக இருக்கலாம்.
வினவலை சுருட்டையுடன் இயக்கி வெளியீட்டைப் பார்ப்போம்:
இதன் விளைவாக மூல 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
அவ்வளவுதான்.