BASH for 循環小結

【小蝸牛無聊之做
 
我常常須要用到for循環,本身小結一下它的用法:
 
方法1:
    for 變量 in 常量列表; do 一些命令; done;
   
    (注意:我這裏用「常量列表」來表述不必定準確,但願你們理解便可,
     我實在想不出更好的表述了,請你們指教!)   
   
如:for file in `ls`; do echo $file; done;
    for i in 1 2 3 4 5; do echo $i; done;
   
   
方法2:
    for (( 變量初始化; 條件判斷; 變量自變 )); do 一些命令; done;
   
如:for (( i = 0; i < 10; i++)); do echo $i; done;
    這裏就像使用C語言那樣哦~不過是用兩個括號而已。
   
這裏舉一個有趣的例子:
 
#!/bin/bash
# test.sh
 
MAX=10
 
for (( i = 0; i < MAX ; i ++ ))
do
    echo $i
done
 
有趣的是,這裏的 MAX 前面沒有 '$',固然,你使用 $MAX 也是能夠的。
難道 bash 就那麼寬容嗎?據說,相似C的這種語法,只有bash獨有哦~

順便提一下,在bash中使用expr進行簡單的數學計算,以下:
 
MAX=10
 
for (( i = 0; i < MAX ; i ++ ))
do
    echo `expr $i \* $i`
   
    # 或者這樣
    #  echo $[$i * $i]
done
 
注意,這裏須要用 ` ` 括號(一時想不起它叫啥名字)起來表示 expr 是一個命令,前面的 `ls` 也就是取 ls 命令的輸出結果。還有,這裏的'*'要用'\'來轉義,使用 '+' '-' 等算術符則不須要轉移。使用上面註釋掉的第二種方法就不須要轉義。
 
------------------------------------------------------------------------------------------
趙小蝸牛
QQ: 755721501
在不斷奉獻中謀求生存發展、打造本身的優秀品質,用人性最本質最動人的一面「營銷」本身!
相關文章
相關標籤/搜索