HOWTO · Bash

Bash 스크립트의 다중 if 조건

여러 if 조건의 사용에 대한 Bash 프로그래밍 튜토리얼.

이 프로그래밍 자습서에서는 bash의 조건부 구조, 특히 단일 및 다중 조건이 있는 if 조건에 대해 설명합니다.

배시 프로그래밍 소개

Bash는 UNIX 및 Linux 운영 체제의 간단한 명령줄 인터프리터입니다. 이 인터프리터를 사용하면 명령줄을 사용하여 일부 명령을 실행할 수 있으며 이러한 명령은 스크립트라는 파일에 입력하여 집합적으로 실행할 수 있습니다.

셸 스크립트는 bash에서 개별적으로 실행하거나 스크립트 파일에 작성할 수 있는 bash 명령 모음에 불과하며 나중에 해당 스크립트 파일을 bash에서 실행할 수 있습니다. 두 경우 모두 결과는 동일하게 유지됩니다.

Bash는 개발자에게 중요한 도구이며 일반적으로 자주 실행해야 하는 반복적인 작업을 자동화하는 데 사용됩니다. Bash 프로그래밍은 배우기 쉽고 bash 명령에 대한 기본적인 지식만 있으면 됩니다.

Bash 스크립트 작성

Bash 스크립트는 확장자가 .script인 파일에 작성됩니다. Linux는 확장이 없는 운영 체제이지만 bash 스크립트에 이 확장을 사용하는 것이 좋은 프로그래밍 규칙입니다.

다음 명령의 기능은 새 파일을 만드는 것입니다.

vim myscript.sh

이 명령이 실행되면 myscript.sh라는 이름의 파일이 생성되고 vim 편집기에서 열립니다. 아래는 모든 bash 스크립트의 첫 번째 줄입니다.

#!/bin/bash

이 줄은 운영 체제에 bash 인터프리터의 위치를 ​​알려주기 위해 작성된 shebang으로 알려져 있습니다. 이 줄 다음에 bash 스크립트의 실제 코드가 시작됩니다.

Bash 스크립트의 조건문

Bash 스크립트에서 다음과 같은 여러 유형의 조건문을 사용할 수 있습니다.

  • if
  • if .. then.. else
  • if .. elif
  • 중첩 if
  • case 문장

단일 및 다중 조건이 있는 if 문에 대해 논의할 것입니다. if문으로 이동하기 전에 if문에서 일반적으로 사용되는 몇 가지 조건부 연산자를 살펴보겠습니다.

연산자 기호 설명
-eq 두 숫자가 같으면 true를 반환합니다.
-lt 숫자가 다른 숫자보다 작으면 true를 반환합니다.
-gt 숫자가 다른 숫자보다 크면 true를 반환합니다.
== 두 문자열이 같으면 true를 반환합니다.
!= 두 문자열이 같지 않으면 true를 반환합니다.
! 사용된 표현을 부정합니다.

하나의 조건으로 if 문 사용

통사론:

if [ condition-statement ];
    then
        Commands..
fi

if 조건을 사용하는 예제 bash 스크립트를 살펴보겠습니다.

스크립트:

#!/bin/bash
echo "Enter your marks out of 100: "
read marks
if [ $marks -gt 100 ]; then
printf "You have entered incorrect marks: $marks\n "
fi

출력:

조건이 하나인 if 문 사용

여러 조건이 있는 if 문 사용

이전 예에서는 단일 조건을 사용했습니다. 여러 조건을 적용하고 논리 연산자 AND 또는 OR 연산자를 사용하여 조건을 구분할 수도 있습니다.

아래의 예를 살펴보자.

스크립트:

#!/bin/bash
echo "Enter your marks out of 100: "
read marks
if [[ $marks -gt 100 && $marks -lt 0 ]]; then
printf "You have entered incorrect marks: $marks\n "
fi

출력:

여러 조건이 있는 if 문 사용