Bonjour a tous,
je me demandais si en bash (version 3.2.57) il était possible de capter une exception avec son message, ou au moins différencier deux exceptions renvoyant le même code d'erreur.
Par exemple,aura 1 pour code d'erreur mais Permission Denied comme message d'erreur, mais
Code : Sélectionner tout - Visualiser dans une fenêtre à part touch /fichierrenvoie aussi 1, mais avec le message no such file or directory. J'envoie le code qui va avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part touch /dossierInexistant/fichier
Ce code demande à l'utilisateur un chemin pour créer un fichier, il s'arrête en cas de réussite, et en cas d'échec doit avertir l'utilisateur de la cause de l'erreur (ce qui actuellement me pose problème...).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 #!/bin/bash while [ 1 ]; do echo entrez le chemin du fichier a creer \(ainsi que le nom du fichier et son extension\) ou tapez quit pour quitter : echo repertoire courant : `pwd` read file if [ $file = "quit" ]; then exit 0 fi touch $file if [ $? -eq 0 ] then echo Fichier cree avec succes ! read exit 0 else #code permettant de savoir si l'erreur vient d'une erreur de chemin ou d'un acces refuse echo Echec de la creation du fichier fi done
$? renvoie 1 dans les deux cas d'erreur que j'ai pu voir (erreur de chemin et permission refusée).
Dans tout les cas je vous remercie de votre aide et de votre attention![]()
Partager