# AppleScript do shell script commande



## christophe14 (5 Octobre 2013)

Bonjour,

Alors, voilà, j'ai récupéré un script que je souhaite améliorer en rajoutant l'affichage d'un message d'erreur quand la commande do shell script retourne une erreur.
J'ai récherché ici et là sur internet et fais pas mal d'essais mais je n'y arrive pas (je débute avec AppleScript).

J'ai essayé
    try
        do shell script "xx"
   on error 
        display dialog "Error"
    end try

rien ne s'affiche.

Puis 

try
   do shell script "xx"
on error errMsg number errorNumber
   display dialog "Error: " & errorNumber as text
end try

Pas mieux.

En fait quand la commande do shell script retourne une erreur, c'est --> error number -10004.

N'hésitez pas si vous avez une idée  

Je suis sous Mac OS X 10.8.4

Merci d'avance !


----------



## quark67 (5 Octobre 2013)

Bonsoir, dans ton deuxième code, le message de l'erreur est placé dans la variable *errMsg* ; il suffit donc de l'afficher avec *display dialog*.

La variable contiendra par exemple : « sh: xx: command not found ».


----------



## christophe14 (7 Octobre 2013)

quark67 a dit:


> Bonsoir, dans ton deuxième code, le message de l'erreur est placé dans la variable *errMsg* ; il suffit donc de l'afficher avec *display dialog*.
> 
> La variable contiendra par exemple : « sh: xx: command not found ».



Merci, mais le problème était ailleurs.

En fait dans la commande do shell script "xx", il y avait 2 commandes unix:  do shell script "xx;yy".
Il semble que je ne pouvais pas récupérer l'erreur avec une architecture du type

try
              do shell script "xx;yy"
         on error 
                     display dialog "Error"
    end try

Du coup, j'ai découpé en 2 fois le do shell script "xx;yy".

Un peu comme cela:

try
              do shell script "xx"
         on error 
                     display dialog "Error"
    end try

 do shell script "yy"

Et là, je peux récupérer l'erreur. 

Voilà


----------

