D'accord je comprends un poil plus, enfin je crois. Dans les explications que j'avais eu, c'était du genre avec le try catch on s'en cogne des erreurs s'il y'en a, on continue quand même.
Pour attraper les erreurs en scripting shell, on utilise les codes d'erreur retournés par les applications. Généralement si le programme fini correctement, il retourne un 0 (zéro). Et si y'a erreur, il renvoi un autre code, qui peut être documenté ou pas
.
Pour récupérer ce code, comme dit kaari, on peut se servir de la variable "$?".
De même la présence ou non d'un fichier peut être vérifiée avec la commande test et les exécutions conditionnelles ou if else fi. Je te laisse te renseigner la dessus man sh bash test ou docs externes.