On Fri, 29 Jun 2001, Salamin Florian wrote:

> bash: cmd1 && cmd2 -> AND; execute cmd2 seulement si cmd1 a été executé sans
> erreur.
> csh ou tcsh: cmd1 && cmd2 -> AND; execute soit cmd1 ou (si cmd1 échoue)
> cmd2.

Rien ne vaut d'essayer:

<tcsh@vulcan> schaefer:/giga/d2/MIMEDefang> false && echo yep
<tcsh@vulcan> schaefer:/giga/d2/MIMEDefang> true && echo yep
yep
<tcsh@vulcan> schaefer:/giga/d2/MIMEDefang> bash
bash-2.01$ false && echo yep
bash-2.01$ true && echo yep
yep
bash-2.01$ exit
<tcsh@vulcan> schaefer:/giga/d2/MIMEDefang> csh
<csh@vulcan> schaefer:/giga/d2/MIMEDefang> true && echo yep
yep
<csh@vulcan> schaefer:/giga/d2/MIMEDefang> false && echo yep
<csh@vulcan> schaefer:/giga/d2/MIMEDefang> false || echo yep
yep
<csh@vulcan> schaefer:/giga/d2/MIMEDefang> true || echo yep
<csh@vulcan> schaefer:/giga/d2/MIMEDefang>

Donc && et || ont la même sémantique qu'en C, pour tous les shells, soit
&& n'exécute la partie droite que si la partie gauche évalue à vrai, ||
n'exécute la partie droit que si la partie gauche évalue à faux.

; sépare les commandes.

--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se désabonner aussi.

Répondre à