சில சூழ்நிலைகளில் நமக்கு உதவக்கூடிய மற்றொரு உதவிக்குறிப்பு இது. இந்த இடுகையை ஒரு நினைவூட்டலாக நான் அதிகம் செய்கிறேன், ஏனென்றால் எனக்கு இது ஒரு கட்டத்தில் மீண்டும் தேவைப்படும் என்று எனக்குத் தெரியும்.
நாங்கள் சில ஸ்கிரிப்டை செய்யும்போது பாஷ், மற்றும் பயனர் ஒரு ஐபி முகவரியை உள்ளிட வேண்டும், பின்னர் நாங்கள் (ஸ்கிரிப்ட்) அந்த ஐபி முகவரியைப் பயன்படுத்தி ஏதாவது செய்ய, எல்லாம் எங்கே தவறாக நடக்கக்கூடும் என்று உங்களுக்குத் தெரியுமா? ... பயனர் ஒரு ஐபிக்குள் நுழைய மாட்டார், எந்தவொரு முட்டாள்தனத்தையும் அல்லது முழுமையற்ற ஐபியையும் அல்லது அதைப் போன்றவற்றையும் வைக்க, நிரல் செய்பவர்களுக்கு நான் என்ன சொல்கிறேன் என்று தெரியும் ... ஏனென்றால் இது மிகவும் அபத்தமானது கூட நடக்கும் என்று நினைத்து திட்டமிடப்பட வேண்டும் O_O.
இந்த சூழ்நிலையைத் தவிர்ப்பதற்கு, ஒரு ஐபி சரிபார்க்க செயல்பாடுகள் அல்லது முறைகள் உள்ளன, அதாவது, பயனர் உள்ளிட்ட தரவு உண்மையில் ஒரு ஐபி இல்லையா என்பதை சரிபார்க்க.
இங்கே நான் அவர்களை விட்டு விடுகிறேன்:
function validar_ip()
{
local ip=$ipdudosa
local stat=1
if [[ $ip =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]];
then
OIFS=$IFS
IFS='.'
ip=($ip)
IFS=$OIFS
[[ ${ip[0]} -le 255 && ${ip[1]} -le 255 && ${ip[2]} -le 255 && ${ip[3]} -le 255 ]]
stat=$?
fi
return $stat
}
பயனர் "ஏதோ" க்குள் நுழையும்போது, அது மாறியின் மதிப்பாக இருக்கும் சந்தேகத்திற்குரியது ... குறியீடு இருக்கும்:
echo " Inserte lo que desea comprobar si es una IP."
read "ipdudosa"
இப்போது உள்ளடக்கம் அல்லது மதிப்பை சரிபார்க்க குறிப்போம் சந்தேகத்திற்குரியது மேலே உள்ள செயல்பாட்டுடன், இது உண்மையில் ஒரு ஐபி இல்லையா என்பதை இது சரிபார்க்கும். இது ஒரு ஐபி என்றால் அது அதைச் சொல்லும், அது இல்லையென்றால் அது ஒரு ஐபி அல்ல என்று நமக்குத் தெரிவிக்கும்:
if validar_ip ipdudosa;
then echo "Sí, es una IP correcta :D";
else
echo "No, eso NO es una IP";
fi
முழுமையான ஸ்கிரிப்டை இங்கே விட்டு விடுகிறேன்:
ஐபி சரிபார்க்கும் செயல்பாடு (எடுத்துக்காட்டு)
கவனமாக பாருங்கள் ஆரம்பத்தில் நான் அதை அறிவிக்கிறேன்: #! / பின் / பாஷ் ... அவர்கள் வைத்தால் #! / பின் / SH இது வேலை செய்யாது, நான் கிட்டத்தட்ட 2 நாட்கள் சண்டையிட்டு ஆர்ப்பாட்டம் செய்தேன், ஏனென்றால் செயல்பாடு எனக்கு வேலை செய்யவில்லை, அது எனக்கு இருந்தது sh பாஷ் ஹஹாஹாவுக்கு பதிலாக.
சேர்க்க வேறு எதுவும் இல்லை, இதற்கான செயல்பாடுகள் உள்ளன பைதான், பேர்ல் மற்றும் பிற மொழிகள் ... உண்மையில், ஐபிக்களை சரிபார்க்க ஒரே வழி அல்ல என்பதை நான் உங்களுக்குக் காட்டுகிறேன் பாஷ், ஆனால் அது எனக்கு மிகவும் நல்லது, அதனால்தான் இதைப் பகிர்ந்து கொள்கிறேன்
மேற்கோளிடு
சரியானது! மிகவும் சுவாரஸ்யமானது. மிக்க நன்றி.
நிறுத்தி கருத்து தெரிவித்தமைக்கு நன்றி
நன்று! இப்போது இதை மாற்றியமைக்க முயற்சிப்போம் “[[$ ip = ~ ^ [0-9] {1,3} \. [0-9] {1,3} \. [0-9] {1,3} \ . [0-9] {1,3}]]; " எனவே ஒரு ஐபிவி 6 தவறாக எழுதப்பட்டால் ... வன்முறை ... o_0 ஹெக்ஸாடெசிமல் மற்றும் அதன் 128 பிட்டுகளை வைக்க வேண்டிய குழப்பம்.
நிச்சயமாக, இது நான் எழுப்பிய ஒரு கற்பனையான வழக்கு
ஐபிவி 6 க்கு… அடடா, நான் நகைச்சுவையாகக் கூட பேசவில்லை… அதை விட்டுவிடட்டும்… ஐபிவி 6 (செயல்பாடு) பற்றி என்னவென்று கூட எனக்கு புரியவில்லை என்றால், நான் ஒரு ஐபி எல்ஓஎல் சரிபார்க்க கூட முயற்சிக்கவில்லை!
ஹே, அது உண்மையாக இருந்தால், அதைப் பற்றி சிந்திப்பது பயமாக இருக்கிறது, ஆனால் அணுகுமுறை உள்ளது
இது ஏற்கனவே இயங்குகிறது, இயக்கவும் ./ ஸ்கிரிப்ட் மற்றும் sh ஸ்கிரிப்ட் அல்ல.
ஆமாம், நீங்கள் sh ஸ்கிரிப்டைச் செய்தால், அதை sh உடன் விளக்குவதற்கு முயற்சிக்கும் ... நீங்கள் அதை பாஷ் ஸ்கிரிப்ட் செய்ய வேண்டும் ./script.sh as
வணக்கம், உங்கள் உதவிக்கு நன்றி, இது மிகவும் உதவியாக இருந்தது.