[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Erreur "cp: opérande du fichier cible manquant" dans script shell [debutant]



C'est incontestable :)

mais j'avoue préférer:
action1 && action2

et 

[ expr1 -a expr2 ]
ou mieux
test expr1 -a expr2

action2 n'est entreprise que si action1 se termine correctement, mais ce sont des actions et il peut être dommageable d'exécuter action2 si action1 ne se passe pas bien.

En revanche pour un test, surtout complexe, je préfère n'utiliser qu'une seule instance de test (ou [). Les tests n'étant qu'arithmétiques il n'y a pas de "danger" à évaluer expr2 si expr1 est faux. Ça a l'avantage de lancer un seul processus au lieu de deux (ou plus) et je perçois l'avantage comme celui d'un (joli) "grep foo bar" par rapport à un (horrible) "cat bar | grep foo" :). 

D'ailleurs, je n'en ai pas la moindre idée mais ça ne m'étonnerait pas que [ évalue un peu intelligemment et donc se passe d'évaluations inutiles (faudrait zieuter le code source, le man n'en parle pas)

Cordialement
seb

----- Mail original -----
De: "Daniel Huhardeaux" <no-spam@tootai.net>
À: debian-user-french@lists.debian.org
Envoyé: Lundi 16 Juillet 2012 09:16:18
Objet: Re: Erreur "cp: opérande du fichier cible manquant" dans script shell [debutant]

Bonjour

Le 16/07/2012 08:35, Sébastien MARQUE a écrit :
> Bonjour,
>
> oui, si ça me piquait les yeux c'est surtout parce que c'était 
> difficile à lire (majuscules, pas d'espace, signes cabalistiques 
> toussa toussa) :), après ce sont des goûts personnels qui peuvent très 
> bien ne pas être les plus judicieux:
>
> * je trouve les tests
> "[ expr1 ] && [ expr2]"
> moins élégants que
> "[ expr1 -a expr2 ]"

Ce n'est pas la même chose. Le premier exemple dit "expr2 est réalisée 
si expr1 est vrai". Le second exemple dit "si expr1 ET expr2 sont vrais"

-- 
Daniel

-- 
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: 5003BFC2.6000707@tootai.net">http://lists.debian.org/5003BFC2.6000707@tootai.net


Reply to: