shell 根據變數加減 進行迴圈語句操作

2021-09-02 04:46:22 字數 1025 閱讀 2975

1、while語句

while condition; do 

迴圈體done

condition:迴圈控制條件;進入迴圈之前,先做一次判 斷;每一次迴圈之後會再次做判斷;條件為「true」,則執行 一次迴圈;直到條件測試狀態為「false」終止迴圈 

因此:condtion一般應該有迴圈控制變數;而此變數的值 會在迴圈體不斷地被修正 

進入條件:condition為true 

退出條件:condition為false

新增變數加減為條件:

i=2

while [ $i -gt 0 ];do

echo "i大於0"

i=$(($i-1))

done

i大於0

i大於0

2、until語句

until condition; do 

迴圈體

done

進入條件: condition 為false 

退出條件: condition 為true

新增變數加減為條件:

i=2

until [ $i -eq 0 ];do

echo 'i 不小0'

i=$(($i-1))

done

i 不小0

i 不小0

3、for語句

for 變數名 in 列表;do 

迴圈體

done

依次將列表中的元素賦值給「變數名」; 每次賦值後即執 行一次迴圈體; 直到列表中的元素耗盡,迴圈結束

新增變數加減為條件:

for ((i=1;i<5;i++));do

echo $i

done

123

4

shell中根據日期進行迴圈

在寫shell指令碼時,我們經常會有需求,對某乙個日期時間範圍內進行迴圈處理,可以通過設定起止日期,在起止日期範圍內進行迴圈,datestart 2016 11 16 dateend 2017 03 07 date s date d s date e date d s while le do sta...

shell迴圈中變數的作用域問題

最近實現了乙個shell指令碼,功能簡單來說就是從檔案中按行讀取然後將所有行拼接成一行寫入乙個檔案,關鍵 如下 path all cat 1 while read line doif path all then path all line else path all path all,line fi...

shell程式設計基礎之根據輸入進行相應的操作

這個題目是 輸入a 建立自己名字的資料夾,如果有這個資料夾的話,就讀取file1和file2的檔案內容 輸入b 獲取當前使用者對file1和file2檔案許可權 輸入c 內容轉為大寫 輸入d 計算連線和檔案數目 輸入e 計算檔案空行數目 以下是我的 bin bash read opts case o...