SW/리눅스

Linux : 루프문 Until로 Bash 사용 방법, 예제, 명령어

얇은생각 2021. 6. 20. 07:30
반응형

루프는 프로그래밍 언어의 기본 개념 중 하나입니다. 루프는 특정 조건이 충족될 때까지 일련의 명령을 반복적으로 실행하려는 경우에 유용합니다.

Bash와 같은 스크립트 언어에서는 반복 작업을 자동화하는 데 루프가 유용합니다. Bash 스크립팅에는 루프 3가지 기본 루프 구조가 있습니다.

Bash Loop에 대한 기본 사항을 설명합니다.

 

 

Linux : 루프로 Bash 사용 방법, 예제, 명령어

 

 

루프 Until 배쉬

till 루프는 주어진 조건이 false로 평가되는 한 주어진 명령 집합을 실행하는 데 사용됩니다.

Bash bill 루프는 다음 형식을 취합니다.

until [CONDITION]
do
  [COMMANDS]
done

 

 

이 조건은 명령을 실행하기 전에 평가됩니다. 조건이 false로 평가되면 명령이 실행됩니다. 그렇지 않으면 조건이 true로 평가되면 루프가 종료되고 프로그램 제어가 다음 명령으로 전달됩니다.

아래 예제에서 반복할 때마다 루프는 변수 카운터의 현재 값을 출력하고 변수를 하나씩 증가시킵니다.

카운터 변수가 4보다 큰 값을 갖는 한 루프가 반복됩니다. 이 스크립트는 다음 출력을 생성합니다.

#!/bin/bash

counter=0

until [ $counter -gt 5 ]
do
  echo Counter: $counter
  ((counter++))
done

# Counter: 0
# Counter: 1
# Counter: 2
# Counter: 3
# Counter: 4
# Counter: 5

 

 

중단 및 계속 문을 사용하여 루프 실행을 제어합니다.

 

 

 

반복 Unitil 배싱 예제

다음 스크립트는 git 호스트에 다운타임이 있을 때 유용할 수 있으며 호스트가 온라인 상태가 될 때까지 수동으로 git 풀링을 여러 번 입력하는 대신 스크립트를 한 번 실행할 수 있습니다. 성공할 때까지 리포지토리를 끌어오려고 시도합니다.

#!/bin/bash

until git pull &> /dev/null
do
    echo "Waiting for the git host ..."
    sleep 1
done

echo -e "\nThe git repository is pulled."

# Waiting for the git host ...
# Waiting for the git host ...
# Waiting for the git host ...
# 
# The git repository is pulled.

 

 

이 스크립트는 "Waiting for git host..."를 출력하고 git 호스트가 온라인 상태가 될 때까지 1초 동안 기다립니다. 리포지토리를 끌어오면 "Git 리포지토리 꺼짐"이 출력됩니다.

반응형