[shell script] while 문

기본 while 문

while문은 뒤에 나오는 조건문이 이면 do~done 사이의 명령어를 실행하는 반복문입니다.

$ cat test1
#!/bin/bash
var1=10
while (( $var1 > 0 ))   <----- 또는 [ $var1 -gt 0 ]
do
        echo "var1: $var1"
        (( var1 = $var1 - 1 )) <----- 또는 var1 = $[$var1 - 1]
done

$ ./test1
var1: 10
var1: 9
var1: 8
var1: 7
var1: 6
var1: 5
var1: 4
var1: 3
var1: 2
var1: 1

여러 명령 사용

while 문에 여러 명령을 사용할 수도 있습니다.

while command1
	command2
do
	commands
done

가장 마지막 명령이 반복이 종료하기 위해 검사하는 조건문입니다.

$ cat test1
#!/bin/bash
var1=10
while echo $var1
        (( $var1 > 0 ))
do
        echo "var1: $var1"
        (( var1 = $var1 - 1 ))
done

$ ./test1
10
var1: 10
9
var1: 9
8
var1: 8
7
var1: 7
6
var1: 6
5
var1: 5
4
var1: 4
3
var1: 3
2
var1: 2
1
var1: 1
0

출력을 보면 마지막에 var10일 때,
echo $var1이 한 번 실행된 후,
(( $var1 > 0 ))을 검사해서 종료된 것을 볼 수 있습니다.

좋은 웹페이지 즐겨찾기