기계적 인조 인간

배쉬 사례 진술

장리ì�¸(Zhangliyin)_TimelessPart1_뮤ì§�비ë""오(MusicVideo)

장리ì�¸(Zhangliyin)_TimelessPart1_뮤ì§�비ë""오(MusicVideo)

차례:

Anonim

Bash case 문은 일반적으로 여러 가지 선택이있을 때 복잡한 조건을 단순화하는 데 사용됩니다. 중첩 된 if 문 대신 case 문을 사용하면 bash 스크립트를보다 읽기 쉽고 유지 관리하기 쉽게 만들 수 있습니다.

Bash case 문은 Javascript 또는 C switch 문과 비슷한 개념입니다. 주요 차이점은 C 스위치 명령문과 달리 Bash 케이스 명령문은 패턴 일치를 발견하고 해당 패턴과 연관된 명령문을 실행 한 후에는 패턴 일치를 계속 검색하지 않는다는 것입니다.

이 튜토리얼에서는 Bash case 문의 기본 사항을 다루고 쉘 스크립트에서이를 사용하는 방법을 보여줍니다.

사례 설명 구문

Bash case 문은 다음 형식을 따릅니다.

case EXPRESSION in PATTERN_1) STATEMENTS;; PATTERN_2) STATEMENTS;; PATTERN_N) STATEMENTS;; *) STATEMENTS;; esac

  • 각 case 문은 case 키워드와 case 표현식 및 in 키워드로 시작합니다. 명령문은 esac 키워드로 끝납니다. | 운영자. ) 연산자는 패턴 목록을 종료합니다. 패턴에는 특수 문자가있을 수 있습니다. 패턴과 관련 명령을 절이라고합니다. 각 절은 ;; 로 끝나야합니다. ;; 식과 일치하는 첫 번째 패턴에 해당하는 명령이 실행됩니다. 기본 사례를 정의하기 위해 와일드 카드 별표 기호 ( * )를 최종 패턴으로 사용하는 것이 일반적입니다. 이 패턴은 항상 일치합니다. 일치하는 패턴이 없으면 반환 상태는 0입니다. 그렇지 않으면, 리턴 상태는 실행 된 명령의 종료 상태입니다.

사례 설명 예

다음은 주어진 국가의 공식 언어를 인쇄하는 bash 스크립트에서 case 문을 사용하는 예입니다.

languages.sh

#!/bin/bash echo -n "Enter the name of a country: " read COUNTRY echo -n "The official language of $COUNTRY is " case $COUNTRY in Lithuania) echo -n "Lithuanian";; Romania | Moldova) echo -n "Romanian";; Italy | "San Marino" | Switzerland | "Vatican City") echo -n "Italian";; *) echo -n "unknown";; esac

사용자 정의 스크립트를 파일로 저장하고 명령 행에서 실행하십시오.

bash languages.sh

스크립트는 국가를 입력하도록 요청합니다. 예를 들어, "Lithuania"를 입력하면 첫 번째 패턴과 일치하고 해당 절의 echo 명령이 실행됩니다.

스크립트는 다음 출력을 인쇄합니다.

Enter the name of a country: Lithuania The official language of Lithuania is Lithuanian

Enter the name of a country: Argentina The official language of Argentina is unknown

결론

지금까지 bash case statement를 작성하는 방법에 대해 잘 알고 있어야합니다. 이들은 종종 명령 행에서 쉘 스크립트로 매개 변수를 전달하는 데 사용됩니다. 예를 들어, init 스크립트는 서비스를 시작, 중지 또는 다시 시작하기 위해 case 문을 사용하고 있습니다.

bash 터미널