Bash Shell - 무한 루프 (Infinite loop)

Bash shell script에서 무한 루프(Infinite loop)를 만드는 방법들을 소개합니다.

Example 1 : while loop

다음과 같이 while을 이용하여 무한 루프를 만들 수 있습니다. if와 break를 이용하여 특정 조건에서 루프를 탈출하도록 구현할 수도 있습니다.

#!/bin/bash

while :
do
    echo "Doing something"
    sleep 1
done

Output:

$ bash example.sh
Doing something
Doing something
Doing something
Doing something
...

Example 2 : while loop

아래 예제도 무한 루프이고, 위의 예제와 거의 동일합니다. while : 대신에 while true를 사용하였습니다.

#!/bin/bash

while true
do
    echo "Doing something"
    sleep 1
done

Output:

$ bash example.sh
Doing something
Doing something
Doing something
Doing something
...

Example 3 : for loop

아래 예제는 for를 이용하여 무한 루프를 구현하였습니다. for의 탈출 조건을 생략하여 무한 루프를 만들었습니다.

#!/bin/bash

for (( ; ; ))
do
    echo "Doing something"
    sleep 1
done

Output:

$ bash example.sh
Doing something
Doing something
Doing something
Doing something
...

Example 4 : Single line

아래 예제는 1줄로 무한 루프를 만드는 방법입니다. Script 뿐만 아니라, 터미널에서도 간편히 사용할 수 있습니다.

#!/bin/bash

while true; do echo "Doing something"; sleep 1; echo "Doing other things"; done

Output:

$ bash example.sh
Doing something
Doing other things
Doing something
Doing other things
Doing something
Doing other things
...
Loading script...
codechachaCopyright ©2019 codechacha