Linuxda bir önceki komutun düzgün çalışıp hata verip vermediğini aşağıdaki kodla kontrol edebiliriz.
echo $?
Eğer komut 0 değeri verirse kod düzgün çalışmış başka bir sayı verirse hata vermiş demektir.
Bash scriptleri genelde otomasyon için kullanıldığından dolayı exit codelar önemlidir. Scriptimiz çalışırken alabileceği hatayı kontrol edip ona gore aksiyon almamız scriptimizin düzgün çalışmasını sağlar. Örneğin bir hata olduğunda kendimize maille bilgilendirme yapabiliriz.
Örnek:
#!/bin/bash
package = htop
sudo apt install htop -y
if [ $? -eq 0 ]
then
echo "paket başarılı şekilde kurulmuştur"
else
echo "package install unsuccessful"
fi
Yukardaki örnekte scriptimiz htop paketini kurmaya çalışmakta eğer kurabilirse ekrana paket başarılı şekilde kurulmuştur yazdırmakta kuramazsa da paket kurulamamıştır yazdırmaktadır. Kurma işleminin başarılı olup olmadığını da $? ‘in 0 ‘ a eşit olup olmadığına bakarak kontrol ediyoruz.
Not: Exit codeları kendisinden önce gelen komutun çalışıp çalışmadığını gösterir, o yüzden mutlaka kontrol etmek istediğiniz komuttan sonra kullanılmalıdır.
Not 2: Çalıştırdığımız scriptlerin herhangi bir aşamasında exit komutuyla durduruabiliriz. Bu sayede scriptimize istediğimiz exit kodu verir ve bunları loglayıp hataların nerede oluştuğunu görebiliriz. Exit kodla bir scriptle çıkıldığı zaman kendisinden sonra gelen komutlar çalışmaz