Shell腳本中的for,while用法

1. for循環格式

帶列表的for循環

for  var  in {1..10}
# for var in {1,2,3,4,5,6,7,8,9,10}
do
command
...
done

for var in {1..50..2}
#for var in {1,3,5,7,9..,49}
do
command
...
done
類C的for循環
for((integer = 1; integer <= 5; integer++))  
do  
command
...  
done  
無列表的for循環
for argument  
do  
command
...
done  

2. while循環格式

while expression
do
command
command
```
done
#!/bin/bash  
#計數器控制的while循環  
sum=0  
  
i=1  
  
while(( i <= 100 ))  
do  
     let "sum+=i"  
     let "i += 2"     
done  
  
echo "sum=$sum"

#!/bin/bash  
#結束標記控制的while循環  
echo "Please input the num(1-10) "  
read num  
  
while [[ "$num" != 4 ]]  
do   
   if [ "$num" -lt 4 ]  
   then  
        echo "Too small. Try again!"  
        read num  
   elif [ "$num" -gt 4 ]  
   then  
         echo "To high. Try again"   
         read num  
   else  
       exit 0  
    fi  
done   
  
echo "Congratulation, you are right! " 
#!/bin/bash  
#標誌控制的while循環  
echo "Please input the num "  
read num  
  
sum=0  
i=1  
  
signal=0  
  
while [[ "$signal" -ne 1 ]]  
do  
    if [ "$i" -eq "$num" ]  
    then   
       let "signal=1"  
       let "sum+=i"  
       echo "1+2+...+$num=$sum"  
    else  
       let "sum=sum+i"  
       let "i++"  
    fi  
done  

#!/bin/bash  
#命令行控制的while循環  
echo "number of arguments is $#"  
  
echo "What you input is: "  
  
while [[ "$*" != "" ]]  
do  
    echo "$1"  
    shift  
done  




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章