உங்கள் ஷெல் ஸ்கிரிப்ட்களில் லூப் வரை எவ்வாறு பயன்படுத்துவது


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

வெளிப்பாடு தவறானது என மதிப்பிடப்படும் வரை குறியீட்டின் தொகுப்பை இயக்க லூப் பயன்படுத்தப்படும் வரை. இது சிறிது நேர வளையத்திற்கு நேர் எதிரானது. வெளிப்பாடு உண்மையாக இருக்கும்போதும், லூப் எதிர்மாறாக இருக்கும் வரை லூப் குறியீடு தொகுதியை இயக்கும்.

until [ expression ]
do
	code block
	...
	...
done

தொடரியல் உடைப்போம்.

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

இந்த சிறு கட்டுரையில், பின்வரும் எடுத்துக்காட்டுகளைப் பயன்படுத்தி உங்கள் ஷெல் ஸ்கிரிப்ட்களில் லூப் வரை எவ்வாறு பயன்படுத்துவது என்பதை நீங்கள் கற்றுக் கொள்வீர்கள்.

ஸ்கிரிப்ட்களில் எல்லையற்ற சுழற்சியை உருவாக்கவும்

தவறான அறிக்கையை வெளிப்பாடாகப் பயன்படுத்தி எல்லையற்ற சுழற்சியை உருவாக்கலாம். நீங்கள் எல்லையற்ற சுழல்களை உருவகப்படுத்த முயற்சிக்கும்போது, தூக்கத்தைப் பயன்படுத்த முயற்சி செய்யுங்கள், இது அவ்வப்போது ஸ்கிரிப்டை கடந்து செல்லும்.

count=0
until false
do
	echo "Counter = $count"
	((count++))
	sleep 2
done

ஒற்றை வரி அறிக்கைகளை உருவாக்கவும்

நீங்கள் ஒற்றை வரி வளைய அறிக்கைகளை உருவாக்கலாம். கீழே உள்ள குறியீட்டைப் பாருங்கள். இது எங்கள் முதல் எல்லையற்ற லூப் எடுத்துக்காட்டுக்கு சமம், ஆனால் ஒரு வரியில். ஒவ்வொரு அறிக்கையையும் நிறுத்த இங்கே நீங்கள் அரைப்புள்ளி (;) ஐப் பயன்படுத்த வேண்டும்.

# until false; do echo "Counter = $count"; ((count++)); sleep 2; done

இடைவெளியுடன் ஓட்டத்தை மாற்றி, அறிக்கையைத் தொடரவும்

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

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

count=0
until false
do
  ((count++))
  if [[ $count -eq 5 ]]
  then
    continue
  elif [[ $count -ge 10 ]]
  then
    break
  fi
  echo "Counter = $count"
done

இந்த கட்டுரைக்கு அதுதான். மற்றொரு சுவாரஸ்யமான கட்டுரையை விரைவில் நாங்கள் பிடிப்போம் ‘வரை’ பின்னர் தொடர்ந்து படிக்கவும் எங்களுக்கு ஆதரவளிக்கவும்.