Bash'de değişkenin ayarlanmış veya boş olup olmadığı nasıl kontrol edilir

How Check Variable Is Set



Bir değişken tanımlı veya tanımsız olabilir. Herhangi bir değişken bildirilmediğinde veya bildirilmediğinde ancak hiçbir değer atanmadığında, değişken ayarlanmaz veya tanımlanmaz. Herhangi bir değişken bildirildiğinde ve bir değerle atandığında, değişken ayarlanır. Çoğu zaman, belirli bir değişkenin programlama amaçları için ayarlanıp ayarlanmadığını bilmek gerekir. Değişkenin ayarlanıp ayarlanmadığını kontrol etmenin önemli amaçlarından biri veri doğrulamadır. Bash, bir değişkenin ayarlanıp ayarlanmadığını kontrol etmek için diğer standart programlama dilleri gibi yerleşik bir işleve sahip değildir. Ancak bash'ın bu görevi yapacak bir özelliği var. Değişkenin bash içinde ayarlanıp ayarlanmadığını nasıl kontrol edebileceğiniz bu eğitimde gösterilmektedir.

Sözdizimi:







[[ -vdeğişken]]Veya[[ -İle birliktedeğişken]]

Değişkenin ayarlanıp ayarlanmadığını kontrol etmek için '-v' veya '-z' seçeneği kullanılır. Yukarıdaki Boole ifadesi, değişken ayarlanmışsa true değerini, değişken ayarlanmamış veya boş değilse false değerini döndürür.



${değişken+dize}

Parametre ikamesi, değişkenin ayarlanıp ayarlanmadığını kontrol etmenin başka bir yoludur. Değişken ayarlanırsa, dizenin değeri döner, aksi takdirde null değeri döner.



Örnek-1: '-z' seçeneğini kullanarak değişkenin ayarlanıp ayarlanmadığını kontrol edin

adlı bir bash dosyası oluşturun check_var1.sh aşağıdaki komut dosyası ile. Burada ilk ` eğer' koşul true değerini döndürür ve Num değişkeni ayarlanmadı yazdıracak. Bir sonraki ifadede, değişkene 20 atanır, $sayı . İkinci 'if' koşulu false döndürür ve Num ayarlanır ve Num=20 değeri yazdıracak.





check_var1.sh

#!/bin/bash
#Değişkenin ayarlanıp ayarlanmadığını kontrol et
Eğer [ -İle birlikte ${Sayı} ];sonra
dışarı attı ''Num' değişkeni ayarlanmadı'
Başka
dışarı attı ''Num' değişkeni ayarlandı'
olmak
#Bir değer ata
birde=yirmi
#Değeri atadıktan sonra değişkenin ayarlanıp ayarlanmadığını kontrol edin
Eğer [ -İle birlikte ${Sayı} ];sonra
dışarı attı ''Num' değişkeni ayarlanmadı'
Başka
dışarı attı ''Num ayarlanır ve Num değeri=$sayı'
olmak

Komut dosyasını çalıştırın.



$bashcheckvar1.sh

Örnek-2: Değişkenin değiştirilip değiştirilmediğini kullanarak değişkenin ayarlanıp ayarlanmadığını kontrol edin

adlı bir bash dosyası oluşturun check_var2.sh ve aşağıdaki betiği ekleyin. Burada, değişkenin ayarlanıp ayarlanmadığını kontrol etmeden önce $str değişkenine bir dize değeri atanır. 'Eğer' koşulu true değerini döndürür ve mesaj, 'str' değişkeni ayarlandı ve değer Merhaba yazdıracak.

check_var2.sh

#!/bin/bash
#Değişkeni ayarla
P=Merhaba
#str değişkeni ayarlanmışsa, World değerini checkval olarak atayın
çek=${str+Dünya}
#Değişkenin ayarlanıp ayarlanmadığını kontrol et
Eğer [ $kontrol -eqDünya];sonra
dışarı attı ''str' değişkeni ayarlandı ve değer$ str'
Başka
dışarı attı ''str' değişkeni ayarlanmadı'
olmak

Komut dosyasını çalıştırın.

$bashcheckvar2.sh

Örnek-3: Değişkenin boş olup olmadığını kontrol edin

adlı bir bash dosyası oluşturun check_var3.sh ve aşağıdaki betiği ekleyin. Komut dosyası, ilk komut satırı argümanını bir değişkende saklayacaktır, $argv sonraki ifadede test edilir. çıktı olacak İlk argüman boş herhangi bir argüman iletilmezse, aksi takdirde ilk argümanın değeri yazdırılacaktır.

check_var3.sh

#!/bin/sh
#İlk komut satırı argüman değerini oku
bağımsız değişken='1 dolar'
#İlk bağımsız değişken değerinin sağlanıp sağlanmadığını kontrol edin
[ -v '$argv' ] && dışarı attı 'İlk argüman boş' ||
dışarı attı 'İlk argümanın değeri$argv'

Komut dosyasını herhangi bir argüman olmadan çalıştırın.

$bashcheckvar3.sh

Komut dosyasını bir argümanla çalıştırın.

$bashcheckvar3.shÖlçek

Çözüm

Değişkenin ayarlanmış, ayarlanmamış veya boş olduğunu kontrol etmenin farklı yolları, çeşitli örnekler kullanılarak bu öğreticide gösterilmektedir. Umarım bu eğitim, kullanıcıların herhangi bir bash değişkenini test etme yollarını öğrenmelerine yardımcı olur.