Bash迴圈結構

2021-08-31 08:38:11 字數 2095 閱讀 4197

![endif]-->!-->![endif]-->!-->![endif]-->!-->

forarginlist

do …

done

有限迴圈,次數取決於

list

元素的個數,內容取決於

list

元素的值

while [

…] do

… done

條件迴圈,當條件為真時,執行一次迴圈

until [

…] do

… done

條件迴圈,當條件為假時,才執行一次迴圈

casearg in

… ) … ;;

… ) …;;

esac

條件分支,注意每個分支中,條件和結果用

」)」分開,結束用兩個封號

」;;」

#! /bin/bash

for item in "a" "b" "c" "d" "e" "f"

do echo "$item"

done

#######for result

#a #b

#c #d

#e #f

a="abc def ghi jkl mno pqr"

for argu in `echo $a`

do echo "$argu"

done

######for result

#abc

#def

#ghi

#jkl

#mno

#pqr

b=10

c=20

while [ "$b" -lt "$c" ]

do echo "b=$b"

let "b=$b+1"

done

#######while result

#b=10

#b=11

#b=12

#b=13

#b=14

#b=15

#b=16

#b=17

#b=18

#b=19

b=10

c=20

while [ "$b" -lt "$c" ]

do let "b=$b+1"

if [ "$b" -eq "13" ]

then

continue

fi echo "b=$b"

done

#######while result

#b=11

#b=12

#b=14

#b=15

#b=16

#b=17

#b=18

#b=19

#b=20

while [ "$var" != "end" ]

do echo "while input variable"

read var

done

until [ "$var" != "end" ]

do echo "until input variable"

read var

done

echo "hit a key, then hit return"

read var

case "$var" in

"1" ) echo "var is 1" ;;

"2" ) echo "var is 2" ;;

* ) echo "var is other" ;;

esac

select var in "123" "456" "789"

do echo "ok is $var"

break

done 1

、for

中的list

可以用命令替換 2

、read

輸入是var

,而不是

$var 3

、select

很直觀,直接將

list

中的所有輸出選單樣,但有待進一步。

玩轉Bash指令碼 迴圈結構之for迴圈

for 變數 in 取值列表 do 各種操作 done 還有罕見的寫法就是都寫作一行裡 for 變數 in 取值列表 do 各種操作 done 取值列表大致可以分成列舉和迭代兩類 取值列表為空格或回車符分割的字串 foriin meat sleep woman doecho i like i don...

玩轉Bash指令碼 迴圈結構之for迴圈

for迴圈 for 變數 in 取值列表 do 各種操作 done還有罕見的寫法就是都寫作一行裡 for 變數 in 取值列表 do 各種操作 done取值列表大致可以分成列舉和迭代兩類 取值列表為空格或回車符分割的字串 for i in apple meat sleep woman do echo...

bash 迴圈寫法

for 依次訪問列表裡的元素。由空格或回車分隔的串就是列表。for var in 列表 do done 列表的生成方式 for練習 1,分別求100以內所有偶數之和,所有奇數之和 bin bash declare i sum1 0 declare i sum2 0 for var in do if ...