쉘스크립트 if 예제

한 조건이 true가 되면 중첩된 상태에서 다른 조건만 확인합니다. 예를 들어 3개의 숫자 값을 입력으로 가져 와서 가장 큰 값을 확인합니다. 이 예제에서 „에코 true“는 „[$foo -ge 3]“이 0(true)을 반환하는 경우에만 실행됩니다. 왜, 당신은 요청할 수 있습니다. bash는 필요할 때만 조건을 평가하기 때문입니다. 및 결합 식을 사용할 때 결합 식을 true로 만들기 위해 두 조건 모두 true여야 합니다. 첫 번째 조건이 false를 반환하는 경우 두 번째 조건이 반환하는 것은 중요하지 않습니다. 결과는 거짓이 될 것입니다. 따라서 bash는 두 번째 조건을 평가하지 않으며 예제에서 „에코 true“가 실행되지 않는 이유입니다.

첫 번째 조건이 true인 경우 두 번째 조건이 평가되지 않는 경우 또는 연산자(„||“)에 대해 동일합니다. 글쎄, 다이빙을 위해 너무 많이. 더 많은 것을 알고 싶다면 고급 Bash-스크립팅 가이드와 Bash 참조 설명서 또는 Bash 스크립팅에 대한 시스템 관리자 가이드를 알려주고 싶습니다. 다음 표에는 단일 구문과 이중 대괄호 구문 모두에 대한 조건 가능성이 나열되어 있습니다. 단일 예외를 저장하면 예제는 단일 대괄호 구문으로 제공되지만 항상 double 대괄호와 호환됩니다. 예를 들어 18세 이상이면 파티에 갈 수 있습니다. 당신이 하지 않지만 당신은 당신의 부모로부터 편지를 가지고 있다면 당신은 갈 수 있지만 자정 전에 돌아와야합니다. 그렇지 않으면 갈 수 없습니다. 첫 번째 예제는 파일의 존재를 확인합니다: 사용자 ID를 테스트하기 위한 문자열 비교의 예: || (또는) 운영자 또는 (및) 연산자.

이렇게 하면 if 문을 중첩하기 위해 추가 코드를 작성할 필요가 없습니다. 위의 코드에는 연령이 100보다 크거나 같는지 확인하는 중첩 if 문이 있습니다. 이것은 elif (다른 경우)를 사용하여 변경할 수도 있습니다. elif의 구조는 if의 구조와 동일합니다. 이 예제에서는 특정 연령 범위를 확인합니다. 20세 미만이거나 50세 미만인 경우 연령 범위를 벗어났습니다. 20~30세 인 경우 20대 이상입니다. 위의 예제는 명령줄에 입력할 때 작동 합니다.

조건이 false가 되면 조건이 다른 경우 조건을 확인하십시오. 예를 들어 학생의 마크를 입력하고 마크가 80보다 크거나 같는지 확인한 다음 „Very Good“을 인쇄합니다. 마크가 80보다 크고 50과 같으면 50 등을 인쇄합니다. 아래 스크립트를 확인하고 다른 2 입력으로 셸에서 실행합니다. 들여 쓰기의 이야기. 여기에 당신의 인생을 더 쉽게 때의 완벽한 예입니다. 스크립트 내부에 필요한 만큼 if 문이 있을 수 있습니다. 다른 if 문 안에 if 문이 있을 수도 있습니다. 예를 들어 명령줄에 지정된 숫자를 분석할 수 있습니다. 우리는 일련의 if 및 elif 문을 사용할 수 있지만 곧 무분면 커질 것입니다.

다행히 도서 문을 통해 상황을 더 깨끗하게 만들 수 있습니다. 설명하기가 약간 어렵기 때문에 이 예제의 조건은 기본적으로 명령입니다. 이상하게 들릴 수도 있지만 대괄호와의 비교를 둘러싸는 것은 다음과 같은 기본 제공 테스트 명령을 사용하는 것과 같습니다: 스크립트에서 if 문의 다른 부분은 일반적으로 잘 구분되어 있습니다. 다음은 몇 가지 간단한 예입니다. 스크립팅에 bash를 사용하는 경우 if… 그런 다음 구성 또는 while 루프를 생성합니다.