Linux 쉘 스크립트 읽기 [닫기]

Linux 쉘 스크립트 읽기 [닫기]

이것을 읽는 방법?

if [ $# -lt 1 ]; then
    print_package_file_error_and_exit "No package-file specified."
fi

readonly package_file="$1"

답변1

첫 번째다음 형식의 "if 문"이 있습니다.

if COMMAND_1; then
    COMMAND_2
fi

COMMAND_1실행이 성공하면(0을 반환) 실행하도록 쉘에 지시합니다 COMMAND_2.

COMMAND_1이 예에서는 다음과 같이 괄호를 사용하여 작성된 명령 [ $# -lt 1 ]입니다 .testtest $# -lt 1

test $# -lt 1$#(이 스크립트에 전달된 인수의 수)가 ( ) 1보다 작으면 0이 반환되므로 이 경우 -lt실행이 발생합니다 .COMMAND_2print_package_file_error_and_exit "No package-file specified."

print_package_file_error_and_exit분명히 시스템에 설치해야 하는 애플리케이션이지만 bashrc스크립트나 소스 파일(예: 사용자 파일)의 다른 위치에 정의된 셸 함수일 가능성이 더 높습니다. 이름을 보면 전달된 메시지(이 경우 "No package-file specified.": )를 인쇄한 다음 스크립트를 종료할 것이라고 추측할 수 있습니다.

두번째package_file읽기 전용(한 번 값이 설정되면 변경할 수 없음)이라는 변수를 정의하고 스크립트에 전달된 첫 번째 인수의 값으로 설정합니다( $1).

관련 정보