Obsługa błędów

Rafał Kleger-Rudomin klakier w pld.org.pl
Pią, 14 Wrz 2001, 01:01:44 CEST


Cześć!

W installer-dest zanadto się rozpuściliśmy z używaniem
konstrukcji '| while read' zapominając o nieprzyjemnym efekcie
z tym związanym: mianowicie wnętrze pętli jest wykonywane w subshellu
i niestety zwracany status jest gubiony. 
Tak więc mimo 'set -e' porażka jakiejś komendy czy też exit wewnątrz pętli 
przerywa jedynie pętlę i program leci dalej.

Rozwiązania dwa jakie mi się nasuwają:
1) zapisywać informację o porażce do pliku i sprawdzać zaraz po pętli
   - rozwiązanie częściowe ponieważ trzeba by sprawdzać status każdej 
   komendy w pętli
2) w razie porażki uruchamiać killall `basename $0` :)))))
   - ale wady jak w pkcie 1)

Czy też ja czegoś nie wiem i rozwiązanie jest proste jak drut?


Rafał

-- 
Rafał Kleger-Rudomin (klakier w pld.org.pl)



Więcej informacji o liście dyskusyjnej pld-installer