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

4 Bash If 문 예제 ( If then fi, If then else fi, If elif else fi, Nested if )

Bash 조건문은 프로그래머가 지정한 부울 조건이 true 또는 false로 평가되는지 여부에 따라 다른 계산 또는 작업을 수행합니다. 이 명령문은 특정 조건이 참인지 여부에 따라 쉘 프로그램의 다른 부분을 실행하는 데 사용됩니다. 분기 기능은 셸 스크립트를 강력하게 만듭니다.

Bash에는 다음과 같은 조건문이 있습니다.

  1. if..then..fi 문(단순 If)
  2. if..then..else..fi 문(If-Else)
  3. if..elif..else..fi 문(Else If 사다리)
  4. if..then..else..if..then..fi..fi..(중첩된 경우)

이는 앞서 논의한 awk if 문과 유사합니다.

1. Bash If..then..fi 문

if [ conditional expression ]
then
	statement1
	statement2
	.
fi

이 if 문은 단순 if 문이라고도 합니다. 주어진 조건식이 참이면 키워드 “then”과 “fi” 사이에 있는 문장을 입력하여 실행한다. 주어진 표현식이 0을 반환하면 결과적인 명령문 목록이 실행됩니다.

if then fi 예:

#!/bin/bash
count=100
if [ $count -eq 100 ]
then
  echo "Count is 100"
fi

2. Bash If..then..else..fi 문

If [ conditional expression ]
then
	statement1
	statement2
	.
else
	statement3
	statement4
	.
fi

조건식이 참이면 명령문1, 2를 실행하고, 조건식이 0을 반환하면 else 부분으로 점프하여 명령문3과 명령문 4를 실행한다. if/else 부분을 실행한 후 후속 명령문으로 실행을 재개한다.

if then else fi 예:

<센터>
#!/bin/bash
count=99
if [ $count -eq 100 ]
then
  echo "Count is 100"
else
  echo "Count is not 100"
fi

참고: 이 기사는 진행중인 Bash Tutorial 시리즈의 일부입니다.

3. Bash If..elif..else..fi

If [ conditional expression1 ]
then
	statement1
	statement2
	.
elif [ conditional expression2 ]
then
	statement3
	statement4
	.
.
.
else
	statement5
fi

실행할 코드 블록 중 하나를 선택하려는 경우 if .. elif.. if 를 사용할 수 있습니다. 표현식 1을 확인하고 true이면 명령문 1,2를 실행합니다. expression1이 false이면 expression2를 확인하고, 모든 expression이 false이면 else 블록에 진입하여 else 블록의 명령문을 실행합니다.

if then elif then else fi 예:

#!/bin/bash
count=99
if [ $count -eq 100 ]
then
  echo "Count is 100"
elif [ $count -gt 100 ]
then
  echo "Count is greater than 100"
else
  echo "Count is less than 100"
fi

4. Bash If..then..else..if..then..fi..fi..

If [ conditional expression1 ]
then
	statement1
	statement2
	.
else
	if [ conditional expression2 ]
	then
		statement3
		.
	fi
fi

if 문과 else 문은 bash에 중첩될 수 있습니다. 키워드 "fi"는 내부 if 문의 끝을 나타내며 모든 if 문은 키워드 "fi"로 끝나야 합니다.

위에서 언급한 "if then elif then else fi" 예제는 아래와 같이 if then elif then else fi로 변환할 수 있습니다.

#!/bin/bash
count=99
if [ $count -eq 100 ]
then
  echo "Count is 100"
else
  if [ $count -gt 100 ]
  then
    echo "Count is greater than 100"
  else
  echo "Count is less than 100"
  fi
fi

다음 기사에서는 실제 예제와 함께 Bash 조건식을 사용하는 방법에 대해 논의할 것입니다.

권장 도서

4 Bash If 문 예제 ( If then fi, If then else fi, If elif else fi, Nested if ) Bash 101 해킹, Ramesh Natarajan 작성 . 저는 대부분의 시간을 Linux 환경에서 보냅니다. 그래서 당연히 저는 Bash 명령줄과 셸 스크립팅의 열렬한 팬입니다. 15년 전, *nix의 다양한 버전을 작업할 때 C 셸과 Korn 셸에서 많은 코드를 작성했습니다. 나중에 시스템 관리자로 Linux 작업을 시작했을 때 Bash 셸 스크립팅을 사용하여 가능한 모든 작업을 거의 자동화했습니다. 내 Bash 경험을 바탕으로 Bash 명령줄과 셸 스크립팅 모두에 대한 101개의 실용적인 예제가 포함된 Bash 101 Hacks eBook을 작성했습니다. Bash를 마스터할 생각을 했다면 Bash 명령줄과 셸 스크립팅을 제어하는 ​​데 도움이 될 이 책을 읽어보세요.