AppleScript do shell script commande

christophe14

Membre junior
8 Octobre 2005
12
1
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

Membre émérite
30 Juin 2002
798
46
Strasbourg
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

Membre junior
8 Octobre 2005
12
1
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à