Şimdilik zincirleme komutlar için hata işleme nasıl yapılır merak ediyorum. çalıştırılmaya devam eder kedi başarısızbir bash komut dosyasında zincirleme komutları (borular) ile işleme hatası?
cat file | gzip >/tmp/test
if (çünkü örneğin dosya eksik), gzip ve nedenle son saklanan çıkış kodu: Aşağıdaki kolay göstermek için benim sorunum sadece bir örnektir , $?, . set -e, bu durumda da yardımcı olmayacaktır.
Bunun için en iyi çözüm nedir acaba?
Teşekkürler!
trap 'echo "ERR caught"' ERR
set -o pipefail
cat file | gzip >/tmp/test
çıktı dosyası hala (yaratılış paralel yapılır) ve gzip
idare edilecek oluşturulacak, ancak temizleme yapabilirsiniz:
$ PIPESTATUS'u denediniz mi? Bash için çalışmalı. – khachik
Bunu bile bilmiyordum. Teşekkürler! – aurora