ఇతర స్క్రిప్టింగ్ భాషల మాదిరిగానే, బాష్కు కూడా లూప్లకు మద్దతు ఉంది.
పునరావృతమయ్యే పనులు చేయడానికి ఉచ్చులు గొప్పవి. మేము మా బాష్ స్క్రిప్ట్స్లో ఉచ్చులు మరియు ఉచ్చులు కోసం ఉపయోగించుకోవచ్చు.
ఫర్ లూప్ యొక్క వాక్యనిర్మాణం:
for VARIABLE in PARAM1 PARAM2 PARAM3 do // scope of for loop done
ప్రతి పరామితి కోసం ఫర్ లూప్ అమలు అవుతుంది. పారామితులు సంఖ్యలు, సంఖ్యల పరిధి లేదా తీగలు మొదలైనవి కావచ్చు.
ఈ సరళమైన ఉదాహరణ ఫర్ లూప్ ఉపయోగించి 1 నుండి 5 సంఖ్యలను ముద్రిస్తుంది:
#!/bin/bash for i in 1 2 3 4 5 do echo '$i' done
అవుట్పుట్:
1 2 3 4 5
దీని ద్వారా లూప్ చేయడానికి మేము సంఖ్యల శ్రేణిని కూడా నిర్వచించవచ్చు:
ఉదాహరణకి:
for i in {1..5} do echo '$i' done
అవుట్పుట్:
1 2 3 4 5
స్ట్రింగ్ పారామితుల ద్వారా లూప్ చేయడానికి లూప్ కోసం కూడా మనం ఉపయోగించవచ్చు:
#!/bin/bash for day in MON TUE WED THU FRI SAT SUN do echo '$day' done
అవుట్పుట్:
MON TUE WED THU FRI SAT SUN
ఫర్ లూప్ వ్రాయడానికి మేము సి-స్టైల్ సింటాక్స్ ను కూడా ఉపయోగించవచ్చు. ఉదాహరణకి:
#!/bin/bash for ((i=1; i<=5; i++)) do echo '$i' done
అవుట్పుట్
1 2 3 4 5
ప్రస్తుత డైరెక్టరీలోని అన్ని ఫైళ్ళను లూప్ కోసం బాష్ ఉపయోగించి జాబితా చేయడానికి, మేము వీటిని ఉపయోగిస్తాము:
#!/bin/bash for fname in ./ do ls -l $fname done
ఉచ్చులు ఉన్నప్పుడు బాష్ కూడా మద్దతు ఇస్తుంది. ఒక పరిస్థితి ఒప్పుగా అంచనా వేసే వరకు ఉచ్చులు సూచనల సమితిని అమలు చేస్తాయి.
లూప్ అయితే బాష్ కోసం వాక్యనిర్మాణం:
while [condition] do //execute instructions done
ఏదైనా సూచనలను అమలు చేయడానికి ముందు పరిస్థితిని అంచనా వేస్తారు. అందువల్ల, పరిస్థితిని నవీకరించడానికి ఒక మార్గాన్ని కలిగి ఉండటం అవసరం, లేకపోతే లూప్ ఎప్పటికీ అమలు అవుతుంది.
1 నుండి 5 సంఖ్యలను ముద్రించే సరళమైన కింది లూప్ క్రిందిది. సంఖ్య 5 కంటే ఎక్కువగా ఉన్నప్పుడు లూప్ ముగుస్తుంది.
#!/bin/bash num=1 while [ $num -le 5 ] do echo '$num' let num++ done
ఫర్ లూప్ మాదిరిగానే, మనం కూడా బాష్ అయితే సి-స్టైల్ లో లాంగ్వేజ్ లాగా రాయవచ్చు.
ఉదాహరణకి:
#!/bin/bash num=1 while((num <= 5)) do echo $num let num++ done