logo

배쉬 If

이번 주제에서는 사용법을 알아보겠습니다. if 문 Bash 스크립트에서 자동화된 작업을 완료합니다.

Bash if 문이 유익합니다. 명령문 실행의 순차적 흐름에서 조건부 작업을 수행하는 데 사용됩니다. If 문을 사용하면 일반적으로 Bash 스크립트에서 결정을 내릴 수 있습니다. 이는 우리가 설정할 수 있는 조건에 따라 코드 조각을 실행할지 여부를 결정하는 데 도움이 됩니다.

문자열 추가 자바

기본 if 문

기본 if 문은 특정 조건이 true인 경우 지정된 작업 집합만 실행하도록 명령합니다. 사실이 아닌 경우 해당 작업을 실행하지 마십시오. If 문은 다음 형식을 기반으로 합니다.

통사론

 if [ expression ]; then statements fi 

사이의 진술 그 다음에 그리고 BE (역방향인 경우)는 (대괄호 사이의) 표현식이 참인 경우에만 실행됩니다.

메모:첫 번째 줄에 사용된 공백과 첫 번째 줄 끝의 세미콜론을 확인하세요. 둘 다 필수로 사용해야 합니다.조건문인 경우로 끝나다BE.

  • AND 연산자와 함께 여러 조건을 사용하는 경우:
 if [ expression_1 ] && [ expression_2 ]; then statements fi 
  • OR 연산자와 함께 여러 조건을 사용하는 경우:
 if [ expression_1 ] || [ expression_2 ]; then statements fi 
  • AND & OR 연산자가 포함된 복합 표현식의 경우 다음 구문을 사용할 수 있습니다.
 if [ expression_1 && expression_2 || expression_3 ]; then statements fi 

다음은 if 문의 사용법을 보여주는 몇 가지 예입니다.

실시예 1

이 예에서는 임의의 숫자를 사용자가 입력하여 값이 125보다 큰지 확인합니다.

 #!/bin/bash read -p ' Enter number : ' number if [ $number -gt 125 ] then echo 'Value is greater than 125' fi 

산출

숫자 159를 입력하면 출력은 다음과 같습니다.

Bash If 문

실시예 2

이 예에서는 if 문 두 문자열을 비교하는 간단한 시나리오:

 #!/bin/bash # if condition is true if [ 'myfile' == 'myfile' ]; then echo 'true condition' fi # if condition is false if [ 'myfile' == 'yourfile' ]; then echo 'false condition' fi 

산출

Bash If 문

실시예 3

이 예에서는 if 문을 사용하여 숫자를 비교하는 방법을 보여줍니다.

 #!/bin/bash #if condition (greater than) is true if [ 10 -gt 3 ]; then echo '10 is greater than 3.' fi #if condition (greater than) is false if [ 3 -gt 10 ]; then echo '3 is not greater than 10.' fi #if condition (lesser than) is true if [ 3 -lt 10 ]; then echo '3 is less than 10.' fi #if condition (lesser than) is false if [ 10 -lt 3 ]; then echo '10 is not less than 3.' fi #if condition (equal to) is true if [ 10 -eq 10 ]; then echo '10 is equal to 10.' fi #if condition (equal to) is false if [ 10 -eq 9 ]; then echo '10 is not equal to 9' fi 

산출

Bash If 문

실시예 4

이 예에서는 AND 연산자를 사용하여 if 표현식에 여러 조건을 포함하는 방법을 정의합니다.

 #!/bin/bash # TRUE && TRUE if [ 8 -gt 6 ] && [ 10 -eq 10 ]; then echo 'Conditions are true' fi # TRUE && FALSE if [ 'mylife' == 'mylife' ] && [ 3 -gt 10 ]; then echo 'Conditions are false' fi 

산출

리눅스의 cp 명령
Bash If 문

실시예 5

이 예에서는 OR 연산자를 사용하여 if 표현식에 여러 조건을 포함하는 방법을 정의합니다.

 #!/bin/bash # TRUE || FALSE if [ 8 -gt 7 ] || [ 10 -eq 3 ]; then echo ' Condition is true. ' fi # FALSE || FALSE if [ 'mylife' == 'yourlife' ] || [ 3 -gt 10 ]; then echo ' Condition is false. ' fi 

산출

Bash If 문

실시예 6

이 예에서는 AND 및 OR을 사용하여 if 표현식에 여러 조건을 포함하는 방법을 정의합니다.

 #!/bin/bash # TRUE && FALSE || FALSE || TRUE if [[ 10 -eq 10 && 5 -gt 4 || 3 -eq 4 || 3 -lt 6 ]]; then echo 'Condition is true.' fi # TRUE && FALSE || FALSE if [[ 8 -eq 8 && 8 -gt 10 || 9 -lt 5 ]]; then echo 'Condition is false' fi 

산출

Bash If 문

Bash 스크립팅의 If 문 옵션

If 문에는 특정 작업을 수행하기 위한 많은 옵션이 포함되어 있습니다. 이러한 옵션은 파일 작업, 문자열 작업 등에 사용할 수 있습니다. 다음은 주로 사용되는 옵션입니다.

-
옵션(연산자) 설명
! 표현 EXPRESSION이 거짓인지 확인합니다.
-n 문자열 STRING의 길이가 0보다 큰지 확인합니다.
-z 문자열 STRING의 길이가 0인지(즉, 비어 있는지) 확인하려면
STRING1 == STRING2 STRING1이 STRING2와 같은지 확인합니다.
STRING1 != STRING2 STRING1이 STRING2와 같지 않은지 확인합니다.
INTEGER1 -eq INTEGER2 INTEGER1이 수치적으로 INTEGER2와 동일한지 확인합니다.
INTEGER1 -gt INTEGER2 INTEGER1이 INTEGER2보다 수치적으로 큰지 확인합니다.
INTEGER1 -lt INTEGER2 INTEGER1이 수치적으로 INTEGER2보다 작은지 확인합니다.
-d 파일 FILE이 존재하고 디렉토리인지 확인합니다.
-e 파일 FILE이 있는지 확인합니다.
-r 파일 FILE이 존재하고 읽기 권한이 부여되었는지 확인합니다.
-s 파일 FILE이 존재하고 크기가 0보다 큰지(즉, 비어 있지 않음을 의미) 확인합니다.
-w 파일 FILE이 존재하고 쓰기 권한이 부여되었는지 확인합니다.
x 파일 FILE이 존재하고 실행 권한이 부여되었는지 확인합니다.

중첩된 경우

Bash 스크립트 내에서 필요한 만큼 'if 문'을 적용할 수 있습니다. 다른 'if 문' 안에 if 문을 사용하는 것도 가능합니다. 중첩된 If 문이라고 합니다.

이 예에서는 중첩된 if 표현식을 사용하여 '주어진 숫자가 50보다 크고 짝수인지'를 찾습니다.

 #!/bin/bash #Nested if statement if [  -gt 50 ] then echo 'Number is greater than 50.' if ((  % 2 == 0 )) then echo 'and it is an even number.' fi fi 

산출

인수 값을 100으로 입력하면 출력은 다음과 같습니다.

Bash If 문

결론

이 주제에서는 bash if 문을 사용하여 명령문 실행의 순차적 흐름에서 조건부 분기를 사용할 수 있는 방법에 대해 논의했습니다.