Müzakirə

Linux Bash Script'te $? Kullanımı

Başladan IronPacket · 24 avq 2026 09:47 · 8 Baxış · 0 Cavablar
Mövzunu Açan #0
Bash scripting, sistem yöneticileri ve geliştiriciler için güçlü bir araçtır. Bu yazıda, Bash script’lerinde $? değişkeninin nasıl kullanıldığını inceleyeceğiz. $?, en son çalıştırılan komutun çıkış durumunu temsil eder. Çıkış durumu, bir komutun başarıyla tamamlanıp tamamlanmadığını gösteren bir değerdir; genellikle 0 başarıyı, 1 veya daha yüksek değerler ise hatayı temsil eder.

Öncelikle, $? kullanımını anlamak için basit bir örnek üzerinden gidebiliriz. Aşağıdaki script, bir dosyanın varlığını kontrol eder ve sonuç üzerine işlem yapar:

CODE
1234567891011121314151617#!/bin/bash

dosya="ornek.txt"

# Dosyanın varlığını kontrol et
if [ -e "$dosya" ]; then
    echo "$dosya mevcut."
else
    echo "$dosya mevcut değil."
fi

# Çıkış durumunu kontrol et
if [ $? -eq 0 ]; then
    echo "Kontrol başarılı."
else
    echo "Kontrol başarısız."
fi


Bu script’te, ilk olarak ornek.txt dosyasının varlığı kontrol edilir. -e koşulu, dosyanın var olup olmadığını belirler. Daha sonra, $? ile bu komutun çıkış durumu kontrol edilir. Eğer dosya mevcutsa, çıkış durumu 0 olur ve "Kontrol başarılı." mesajı gösterilir.

Bir başka örnek, bir komutun başarısız olduğu durumları ele almak olabilir. Aşağıdaki gibi bir script yazarsak:

CODE
12345678#!/bin/bash

ls /geçersiz/dosya/yolu

# Çıkış durumunu kontrol et
if [ $? -ne 0 ]; then
    echo "Komut başarısız oldu."
fi


Burada, geçersiz bir dosya yolu denendiği için ls komutu başarısız olur. $? kullanarak bu durumu kontrol ettiğimizde, "Komut başarısız oldu." mesajı elde ederiz.

Sonuç olarak, $? değişkeni Bash script’lerinde komutların başarı durumunu takip etmek için kritik bir öneme sahiptir. Bu değişkeni etkin bir şekilde kullanarak, script’lerimizde hata kontrol mekanizmaları oluşturabilir ve hata durumlarına uygun önlemler alabiliriz.

Cavab vermək üçün daxil olmalısınız.

0 sitat seçildi