PowerShell'de Bir Değişkenin Var Olup Olmadığı Nasıl Kontrol Edilir?


PowerShell kullanıcısı olarak, belirli bir değişkeni betiğinizde kullanmadan önce var olup olmadığını öğrenmelisiniz. Bu eğitimde size PowerShell'de bir değişkenin var olup olmadığını kontrol etmek için farklı yöntemler göstereceğim ve bazı gerçek örnekler sunacağım.

PowerShell'de bir değişkenin mevcut olup olmadığını kontrol etmek için Get-Variable cmdlet'ini kullanabilirsiniz. Örneğin, $stateName adlı bir değişkenin var olup olmadığını kontrol etmek için şu kodu kullanabilirsiniz: if (Get-Variable -Name stateName -ErrorAction SilentlyContinue) { Write-Host "The Variable ' stateName' mevcut." } else { Write-Host "'durumAdı' değişkeni mevcut değil." .

Yöntem 1: Get-Variable Cmdlet'ini Kullanma

PowerShell'de bir değişkenin var olup olmadığını kontrol etmenin en iyi yolu Get-Variable cmdlet'ini kullanmaktır. Bu cmdlet, geçerli PowerShell oturumundaki değişkenler hakkında bilgi almanızı sağlar.

İşte bir örnek:

$stateName = "California"

if (Get-Variable -Name stateName -ErrorAction SilentlyContinue) {
    Write-Host "The variable 'stateName' exists and its value is: $stateName"
} else {
    Write-Host "The variable 'stateName' does not exist."
}

Bu örnekte öncelikle $stateName değişkenini tanımlayıp ona “California” değerini atadık. Daha sonra değişkenin var olup olmadığını kontrol etmek için Get-Variable cmdlet'ini -Name parametresiyle birlikte kullanıyoruz. -ErrorAction SilentlyContinue'yu belirterek, değişkenin mevcut olmaması durumunda oluşabilecek hata mesajlarını bastırırız.

Komut dosyasını VS kodunu kullanarak çalıştırdıktan sonra çıktıyı aşağıdaki ekran görüntüsünde görebilirsiniz.

PowerShell'de Bir Dizeyi Değişkenlere Böl'e göz atın

Yöntem 2: Test Yolu Cmdlet'ini Değişkenle Kullanma: Sağlayıcı

Bir değişkenin varlığını kontrol etmenin bir başka etkili yöntemi de Test-Path cmdlet'ini Variable: sağlayıcısıyla birlikte kullanmaktır. Test-Path cmdlet'i genellikle dosyaların veya dizinlerin varlığını doğrulamak için kullanılır, ancak değişkenleri kontrol etmek için Variable: sağlayıcısıyla birlikte de kullanılabilir.

İşte bir örnek:

$zipCode = 90210

if (Test-Path variable:zipCode) {
    Write-Host "The variable 'zipCode' exists and its value is: $zipCode"
} else {
    Write-Host "The variable 'zipCode' does not exist."
}

Bu durumda, bir $zipCode değişkeni tanımlarız ve ona ABD'deki ünlü bir posta kodunu temsil eden 90210 değerini atarız. Daha sonra değişken: sağlayıcısını ve ardından değişken adını içeren Test-Path cmdlet'ini kullanırız. Değişken mevcutsa koşul $true olarak değerlendirilir ve karşılık gelen mesaj görüntülenir.

İşte aşağıdaki ekran görüntüsündeki çıktı:

PowerShell Yerel Değişkenlerini Okuyun

Yöntem 3: -eq Operatörünü $null ile kullanma

PowerShell'de bir değişkenin var olup olmadığını kontrol etmenin üçüncü yaklaşımı, onu -eq operatörünü kullanarak $null ile karşılaştırmaktır. Bir değişken tanımlanmamışsa veya bir değer atanmamışsa $null'a eşit olduğu kabul edilir.

İşte bir örnek:

$nationalPark = "Yellowstone"

if ($nationalPark -eq $null) {
    Write-Host "The variable 'nationalPark' does not exist or has no value assigned."
} else {
    Write-Host "The variable 'nationalPark' exists and its value is: $nationalPark"
}

Bu örnekte $nationalPark değişkenini tanımlıyoruz ve ona Amerika Birleşik Devletleri'ndeki ünlü milli parka atıfta bulunarak "Yellowstone" değerini atadık. Daha sonra $nationalPark'ı $null ile karşılaştırmak için -eq operatörünü kullanırız. Değişken mevcut değilse veya atanmış bir değer yoksa, koşul $true olarak değerlendirilir ve karşılık gelen mesaj görüntülenir.

İşte aşağıdaki ekran görüntüsündeki çıktı:

Çözüm

Bu eğitimde, Get-Variable cmdlet'i, Test-PathPowerShell'de bir değişkenin var olup olmadığını kontrol etmenin nasıl yapılacağını açıkladım. > Variable: sağlayıcısı ile cmdlet veya $null ile -eq operatörü vb. Her zaman Get-Variable PowerShell cmdlet'ini kullanmanızı öneririm değişkenin var olup olmadığını kontrol etmek için.

İlgili makaleler