Computer >> 컴퓨터 >  >> 프로그램 작성 >> BASH 프로그래밍

Bash For 루프 및 While 루프 예제

다른 스크립팅 언어와 마찬가지로 Bash도 루프를 지원합니다.

루프는 반복적인 작업을 수행하는 데 적합합니다. Bash 스크립트에서 for 루프와 while 루프를 사용할 수 있습니다.

Bash For 루프

for 루프의 구문은 다음과 같습니다.

for VARIABLE in PARAM1 PARAM2 PARAM3
do
  // scope of for loop
done

for 루프는 각 매개변수에 대해 실행됩니다. 매개변수는 숫자, 숫자 또는 문자열의 범위 등이 될 수 있습니다.

Bash For 루프 예제

이 간단한 예는 for 루프를 사용하여 1에서 5까지의 숫자를 인쇄합니다.

#!/bin/bash

for i in 1 2 3 4 5
do
   echo "$i"
done

출력:

1
2
3
4
5

Bash For 루프 - 숫자 범위 인쇄

반복할 숫자 범위를 정의할 수도 있습니다.

예:

for i in {1..5}
do
   echo "$i"
done

출력:

1
2
3
4
5

문자열을 통한 Bash 루프

for 루프를 사용하여 문자열 매개변수를 반복할 수도 있습니다.

#!/bin/bash

for day in MON TUE WED THU FRI SAT SUN
do
   echo "$day"
done

출력:

MON
TUE
WED
THU
FRI
SAT
SUN

Bash For 루프 - C 스타일

C 스타일 구문을 사용하여 for 루프를 작성할 수도 있습니다. 예:

#!/bin/bash

for ((i=1; i<=5; i++))
do
  echo "$i"
done

출력

1
2
3
4
5

현재 디렉토리의 파일 목록을 인쇄하는 For 루프

bash for 루프를 사용하여 현재 디렉토리의 모든 파일을 나열하려면 다음을 사용합니다.

#!/bin/bash

for fname in ./
do
  ls -l $fname
done

Bash While 루프

Bash는 while 루프도 지원합니다. while 루프는 조건이 true로 평가될 때까지 일련의 명령을 실행합니다.

Bash while 루프의 구문은 다음과 같습니다.

while [condition]
do
  //execute instructions
done

조건은 명령을 실행하기 전에 평가됩니다. 따라서 조건을 업데이트하는 수단이 필요합니다. 그렇지 않으면 루프가 영원히 실행됩니다.

Bash While 루프의 예

다음은 1부터 5까지의 숫자를 출력하는 간단한 while 루프입니다. 숫자가 5보다 크면 루프가 종료됩니다.

#!/bin/bash

num=1
while [ $num -le 5 ]
do
   echo "$num"
   let num++
done

Bash C 스타일 While 루프

for 루프와 마찬가지로 언어와 같은 C 스타일로 bash while 루프를 작성할 수도 있습니다.

예:

#!/bin/bash

num=1
while((num <= 5))
do
   echo $num
   let num++
done