Składnia:
[[ -vzmienny]]Lub[[ -zzmienny]]
Opcja „-v” lub „-z” służy do sprawdzania, czy zmienna jest ustawiona lub nieustawiona. Powyższe wyrażenie logiczne zwróci true, jeśli zmienna jest ustawiona i zwróci false, jeśli zmienna nie jest ustawiona lub jest pusta.
${zmienna+ciąg}
Zastępowanie parametrów to kolejny sposób sprawdzenia, czy zmienna jest ustawiona lub nieustawiona. Jeśli zmienna jest ustawiona, zwróci wartość ciągu, w przeciwnym razie zwróci null.
Przykład-1: Sprawdź, czy zmienna jest ustawiona lub nieustawiona za pomocą opcji „-z”
Utwórz plik bash o nazwie check_var1.sh z następującym skryptem. Tutaj pierwszy ` jeśli ` warunek zwróci true i Zmienna Num nie jest ustawiona wydrukuje. W kolejnej instrukcji do zmiennej przyporządkowano 20, $liczba . Drugi warunek `if` zwróci false i Ustawiono Num i wartość Num=20 wydrukuje.
check_var1.sh
#!/kosz/bash#Sprawdź, czy zmienna jest ustawiona, czy nie
Jeśli [ -z ${liczba} ];następnie
wyrzucił „Zmienna „Num” nie jest ustawiona”
w przeciwnym razie
wyrzucił 'Zmienna 'Num' jest ustawiona'
być
#Przypisz wartość
na jednego=20
#Sprawdź, czy zmienna jest ustawiona, czy nie po przypisaniu wartości
Jeśli [ -z ${liczba} ];następnie
wyrzucił Zmienna „Num” nie jest ustawiona”
w przeciwnym razie
wyrzucił ''Num jest ustawiona, a wartość Num=$liczba'
być
Uruchom skrypt.
$grzmotnąćcheckvar1.sh
Przykład-2: Sprawdź, czy zmienna jest ustawiona lub nieustawiona za pomocą substytutu parametru
Utwórz plik bash o nazwie check_var2.sh i dodaj następujący skrypt. Tutaj wartość ciągu jest przypisywana do zmiennej, $str przed sprawdzeniem, czy zmienna jest ustawiona lub nieustawiona. Warunek „if” zwróci true i komunikat, Zmienna 'str' jest ustawiona, a wartość to Hello wydrukuje.
check_var2.sh
#!/kosz/bash#Ustaw zmienną
P=Witaj
#Przypisz wartość World do checkval, jeśli zmienna str jest ustawiona
checkval=${str+Świat}
#Sprawdź, czy zmienna jest ustawiona lub nieustawiona
Jeśli [ $checkval -równeŚwiat];następnie
wyrzucił Zmienna „str” jest ustawiona, a jej wartość to$ str'
w przeciwnym razie
wyrzucił „Zmienna „str” nie jest ustawiona”
być
Uruchom skrypt.
$grzmotnąćcheckvar2.sh
Przykład-3: Sprawdź, czy zmienna jest pusta, czy nie
Utwórz plik bash o nazwie check_var3.sh i dodaj następujący skrypt. Skrypt przechowa pierwszy argument wiersza poleceń w zmiennej, $argv to jest testowane w następnym oświadczeniu. Dane wyjściowe będą Pierwszy argument jest pusty jeśli nie zostanie przekazany żaden argument, w przeciwnym razie zostanie wypisana wartość pierwszego argumentu.
check_var3.sh
#!/kosz/sz#Przeczytaj pierwszą wartość argumentu wiersza poleceń
argv=„1 dolar”
#Sprawdź, czy podano pierwszą wartość argumentu
[ -v '$argv' ] && wyrzucił „Pierwszy argument jest pusty” ||
wyrzucił 'Wartość pierwszego argumentu to$argv'
Uruchom skrypt bez żadnych argumentów.
$grzmotnąćcheckvar3.shUruchom skrypt z argumentem.
$grzmotnąćcheckvar3.shtest
Wniosek
W tym samouczku przedstawiono różne sposoby sprawdzania, czy zmienna jest ustawiona, nieustawiona lub pusta, na różnych przykładach. Mam nadzieję, że ten samouczek pomoże użytkownikom nauczyć się sposobów testowania dowolnej zmiennej bash.