ஒரு பாஷ் ஷெல் ஸ்கிரிப்ட்டில் உள்ளீட்டு வாதத்தின் இருப்பை எவ்வாறு சரிபார்க்கலாம்

Oru Pas Sel Skiripttil Ullittu Vatattin Iruppai Evvaru Cariparkkalam



பாஷ் ஷெல் ஸ்கிரிப்டிங் என்பது மீண்டும் மீண்டும் செய்யும் பணிகளை தானியக்கமாக்குவதற்கும் கட்டளை வரியில் சிக்கலான செயல்பாடுகளைச் செய்வதற்கும் ஒரு சக்திவாய்ந்த கருவியாகும். ஷெல் ஸ்கிரிப்டிங்கில் உள்ள அடிப்படை கருத்துக்களில் ஒன்று, பயனர் அல்லது பிற ஸ்கிரிப்ட்களில் இருந்து உள்ளீட்டு வாதங்களை ஏற்றுக்கொள்வது. உள்ளீட்டு வாதங்களைக் கையாளும் போது, ​​ஸ்கிரிப்ட்டில் எதிர்பாராத நடத்தையைத் தவிர்க்க, உள்ளீட்டு வாதம் உள்ளதா இல்லையா என்பதைச் சரிபார்க்க வேண்டியது அவசியம். இந்த கட்டுரை ஒரு பாஷ் ஷெல் ஸ்கிரிப்ட்டில் உள்ளீட்டு வாதங்களின் இருப்பை சரிபார்க்க பல்வேறு வழிகளைப் பற்றி விவாதிக்கும்.

ஒரு பாஷ் ஷெல் ஸ்கிரிப்ட்டில் உள்ளீட்டு வாதத்தின் இருப்பை எவ்வாறு சரிபார்க்கலாம்

மூன்று வெவ்வேறு வழிகள் உள்ளன:

  1. 'சோதனை' கட்டளையைப் பயன்படுத்துதல்
  2. '$#' மாறியைப் பயன்படுத்துதல்
  3. '-n' விருப்பத்தைப் பயன்படுத்துதல்

முறை 1: 'சோதனை' கட்டளையைப் பயன்படுத்துதல்

'[' கட்டளை என்றும் அழைக்கப்படும் 'சோதனை' கட்டளை, பல்வேறு நிபந்தனைகளை சோதிக்கும் பாஷில் உள்ளமைக்கப்பட்ட கட்டளையாகும். “சோதனை” கட்டளையைப் பயன்படுத்தி நாம் சோதிக்கக்கூடிய நிபந்தனைகளில் ஒன்று மாறி இருக்கிறதா இல்லையா என்பது. 'சோதனை' கட்டளையைப் பயன்படுத்தி உள்ளீட்டு வாதம் உள்ளதா என்பதைச் சரிபார்க்க இங்கே ஒரு எடுத்துக்காட்டு குறியீடு உள்ளது:







#!/பின்/பாஷ்

என்றால் [ -உடன் '$1' ]

பிறகு

எதிரொலி 'உள்ளீட்டு வாதம் இல்லை.'

வெளியேறு 1

இரு

எதிரொலி 'உள்ளீட்டு வாதம் உள்ளது.'

இங்கே '-z' விருப்பம் 'சோதனை' கட்டளையுடன் உள்ளீட்டு வாதம் வெற்று சரமா இல்லையா என்பதை சரிபார்க்க பயன்படுத்தப்படுகிறது. ஸ்கிரிப்ட் ஒரு பிழை செய்தியை வெளியிடும் மற்றும் உள்ளீட்டு வாதம் ஒரு வெற்று சரமாக இருந்தால், நிலைக் குறியீடு 1 உடன் வெளியேறும். இல்லையெனில், ஸ்கிரிப்ட் தொடர்ந்து இயங்கும், கீழே நான் வழங்கியுள்ளேன் மற்றும் குறியீட்டிற்கான உள்ளீட்டு வாதத்தை இது காண்பிக்கும்.





முறை 2: “$#” மாறியைப் பயன்படுத்துதல்

தி “$#” ஒரு ஸ்கிரிப்ட்டுக்கு அனுப்பப்பட்ட உள்ளீட்டு வாதங்களின் எண்ணிக்கையை மாறி சேமிக்கிறது. ஸ்கிரிப்ட் குறைந்தது ஒரு உள்ளீட்டு வாதத்தை எதிர்பார்த்தால், நாம் சரிபார்க்கலாம் “$#” மாறி பூஜ்ஜியத்தை விட பெரியது. ஐப் பயன்படுத்தி குறைந்தபட்சம் ஒரு உள்ளீட்டு வாதமாவது உள்ளதா என்பதைச் சரிபார்க்க இங்கே ஒரு எடுத்துக்காட்டு குறியீடு உள்ளது “$#” மாறி:





#!/பின்/பாஷ்

என்றால் [ $# - சம 0 ]

பிறகு

எதிரொலி 'உள்ளீட்டு வாதம் இல்லை.'

வெளியேறு 1

இரு

எதிரொலி 'உள்ளீட்டு வாதம் உள்ளது.'

இங்கே தி '-eq' என்பதைச் சரிபார்க்க ஆபரேட்டர் பயன்படுத்தப்படுகிறது “$#” மாறி பூஜ்ஜியத்திற்கு சமம் அல்லது இல்லை மற்றும் '$#' மாறி பூஜ்ஜியத்திற்கு சமமாக இருந்தால், ஸ்கிரிப்ட் ஒரு பிழை செய்தியைக் காண்பிக்கும் மற்றும் 1 இன் நிலைக் குறியீட்டைக் கொண்டு வெளியேறும். இல்லையெனில், ஸ்கிரிப்ட் தொடர்ந்து இயங்கும், கீழே நான் வழங்கியுள்ளேன் மற்றும் உள்ளீடு செய்துள்ளேன் குறியீட்டிற்கான வாதம், எனவே இது வாதத்தின் உள்ளீடு இருப்பதைப் பற்றிய செய்தியைக் காட்டுகிறது:



முறை 3: “-n” விருப்பத்தைப் பயன்படுத்துதல்

தி '-n' ஒரு மாறி காலியாக இல்லை என்பதை சரிபார்க்க விருப்பம் பயன்படுத்தப்படுகிறது. உள்ளீட்டு வாதம் உள்ளதா இல்லையா என்பதைச் சரிபார்க்க இந்த விருப்பத்தைப் பயன்படுத்தலாம். ஐப் பயன்படுத்தி உள்ளீட்டு வாதம் உள்ளதா என்பதைச் சரிபார்க்கும் உதாரணக் குறியீட்டைக் கீழே கொடுத்துள்ளேன் '-n' விருப்பம்:

#!/பின்/பாஷ்

என்றால் [ -என் '$1' ]

பிறகு

எதிரொலி 'உள்ளீட்டு வாதம் உள்ளது.'

வேறு

எதிரொலி 'உள்ளீட்டு வாதம் இல்லை.'

வெளியேறு 1

இரு

இங்கே, தி '-n' உள்ளீட்டு வாதம் காலியாக இல்லையா என்பதைச் சரிபார்க்க விருப்பம் பயன்படுத்தப்படுகிறது மற்றும் உள்ளீட்டு வாதம் காலியாக இல்லை என்றால், ஸ்கிரிப்ட் வெற்றிச் செய்தியைக் காண்பிக்கும். இல்லையெனில், ஸ்கிரிப்ட் ஒரு பிழைச் செய்தியைக் காண்பிக்கும் மற்றும் 1 இன் நிலைக் குறியீட்டைக் கொண்டு வெளியேறும், கீழே நான் வழங்கியுள்ளேன் மற்றும் குறியீட்டிற்கான உள்ளீட்டு வாதத்தை இது காண்பிக்கும்.

முடிவுரை

ஷெல் ஸ்கிரிப்டிங்கில், உள்ளீட்டு வாதங்களின் இருப்பை சரிபார்ப்பது, ஸ்கிரிப்ட் எதிர்பார்த்தபடி இயங்குகிறதா என்பதை உறுதிப்படுத்த ஒரு இன்றியமையாத படியாகும். 'சோதனை' கட்டளை, '$#' மாறி அல்லது '-n' விருப்பத்தைப் பயன்படுத்துதல் போன்ற உள்ளீட்டு வாதங்களின் இருப்பைச் சரிபார்க்க பல்வேறு நுட்பங்களைப் பயன்படுத்தலாம். இந்த நுட்பங்களைச் செயல்படுத்துவதன் மூலம், உள்ளீட்டு வாதங்களைக் கையாளக்கூடிய வலுவான மற்றும் நம்பகமான ஷெல் ஸ்கிரிப்ட்களை உருவாக்குகிறோம்.