통사론:
[[ -V변하기 쉬운]]또는[[ -와 함께변하기 쉬운]]
'-v' 또는 '-z' 옵션은 변수가 설정 또는 해제되었는지 확인하는 데 사용됩니다. 위의 부울 표현식은 변수가 설정되면 true를 반환하고 변수가 설정되지 않았거나 비어 있으면 false를 반환합니다.
${변수+문자열}
매개변수 대체는 변수가 설정 또는 해제되었는지 확인하는 또 다른 방법입니다. 변수가 설정되면 문자열 값이 반환되고 그렇지 않으면 null이 반환됩니다.
예-1: '-z' 옵션을 사용하여 변수가 설정 또는 해제되었는지 확인
라는 이름의 bash 파일을 만듭니다. check_var1.sh 다음 스크립트로. 여기서 첫 번째 ` 만약` 조건은 true를 반환하고 숫자 변수가 설정되지 않았습니다. 인쇄됩니다. 다음 명령문에서 20이 변수에 할당되고, $num . 두 번째 'if' 조건은 false를 반환하고 Num이 설정되고 Num의 값이 20입니다. 인쇄됩니다.
check_var1.sh
#!/bin/bash#변수가 설정되었는지 확인
만약 [ -와 함께 ${숫자} ];그 다음에
던졌다 ''Num' 변수가 설정되지 않았습니다'
또 다른
던졌다 ''Num' 변수가 설정되었습니다'
~이다
#값 할당
하나에=스물
#값을 할당한 후 변수가 설정되었는지 확인
만약 [ -와 함께 ${숫자} ];그 다음에
던졌다 ''Num' 변수가 설정되지 않았습니다'
또 다른
던졌다 ''Num이 설정되고 Num의 값=$num'
~이다
스크립트를 실행합니다.
$세게 때리다체크바1.sh
예-2: 매개변수 대체를 사용하여 변수가 설정 또는 해제되었는지 확인
라는 이름의 bash 파일을 만듭니다. check_var2.sh 그리고 다음 스크립트를 추가합니다. 여기서 변수가 설정 또는 해제되었는지 확인하기 전에 $str 변수에 문자열 값을 할당합니다. 'if' 조건은 true를 반환하고 메시지는 'str' 변수가 설정되고 값이 Hello 인쇄됩니다.
check_var2.sh
#!/bin/bash#변수 설정
NS=안녕하세요
# str 변수가 설정되어 있으면 값 World를 checkval에 할당합니다.
체크발=${str+세계}
#변수가 설정 또는 해제되었는지 확인
만약 [ $checkval -eq세계];그 다음에
던졌다 ''str' 변수가 설정되고 값이$ str'
또 다른
던졌다 ''str' 변수가 설정되지 않았습니다'
~이다
스크립트를 실행합니다.
$세게 때리다체크바2.sh
예-3: 변수가 비어 있는지 확인
라는 이름의 bash 파일을 만듭니다. check_var3.sh 그리고 다음 스크립트를 추가합니다. 스크립트는 첫 번째 명령줄 인수를 변수에 저장합니다. $argv 그것은 다음 문에서 테스트됩니다. 출력은 첫 번째 인수가 비어 있습니다. 인수가 전달되지 않으면 첫 번째 인수의 값이 인쇄됩니다.
check_var3.sh
#!/bin/sh# 첫 번째 명령줄 인수 값 읽기
argv='$1'
#첫 번째 인수 값이 제공되었는지 확인하십시오.
[ -V '$argv' ] && 던졌다 '첫 번째 인수가 비어 있습니다' ||
던졌다 '첫 번째 인수의 값은$argv'
인수 없이 스크립트를 실행합니다.
$세게 때리다checkvar3.sh인수를 사용하여 스크립트를 실행합니다.
$세게 때리다checkvar3.sh시험
결론
이 자습서에서는 다양한 예제를 사용하여 변수가 설정되거나 설정되지 않았는지 또는 비어 있는지 확인하는 다양한 방법을 보여줍니다. 이 튜토리얼이 사용자가 bash 변수를 테스트하는 방법을 배우는 데 도움이 되기를 바랍니다.