Linux Set Komutu Kullanımı
Set komutu shell script dosyalarının yürütülmesindeki davranışları ve görevleri belirleyen belirli bayrakları (flag) ayarlamamızı ve ortam değişkenlerini düzenlememize yardımcı olur. Shell scpript dosyasında debug modu açmak için;
set -x
Kapatmak için:
set +x
Script dosyasını durdurmak için,
set -e
Eğer script dosyası içinde tanımlanmayan bir değişken kullandıysanız varsayılan olarak bu değişken reddedilir. Bu dosyanın tanımlanmayan değişkenler için hata üretmesi için “-u” veya “-o” parametresi kullanılır.
#!/usr/bin/env bash
set -u
echo $a
echo bar
set -e pipe komutlarına uygulanmaz. Sorunu çözmek için “set -o pipefail” komutunu kullanabilirsiniz. Pipe da çalıştırılan komutlardan biri başarısız olduğu sürece, tüm pipe komutu başarısız olur ve ardından komut dosyası yürütmeyi sonlandırır.
set -eo pipefail
Bu dört parametrenin tüm bash script dosyalarında yazılması önerilir.
set -euxo pipefail
Alternatif olarak, Bash komut dosyasını çalıştırırken bu parametreleri komut satırından da iletebilirsiniz.
bash -euxo pipefail script.sh