05.03.2014 Views

Chapitre 1 - IPNL - IN2P3

Chapitre 1 - IPNL - IN2P3

Chapitre 1 - IPNL - IN2P3

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

lieu. Sans l’utilisation de la commande eval, file se serait vu affecter la chaîne<br />

~toto/.rhosts et lors de l’utilisation de la variable file plus aucune autre substitution n’aurait<br />

eu lieu.<br />

Les tests<br />

La plupart des langages de programmation disposent de constructions permettant<br />

d’effectuer des test, il en va de même du Korn shell. La formulation d’expressions<br />

conditionnelles qui entreront en jeu au sein de structures de contrôle est réalisée à l’aide<br />

d’opérateurs de test ou de mots clé s’appliquant à des objets.<br />

Pour évaluer une expression conditionnelle et retourner 1 ou 0, on utilise la syntaxe :<br />

[[ instruction-conditionnelle ]]<br />

L’instruction à évaluer sera donc soit :<br />

Un test sur les fichiers ou les répertoires<br />

-a fichier retourne 1 si fichier existe<br />

-d fichier fichier est un répertoire<br />

-x fichier fichier existe et est exécutable par le processus courant<br />

Un test des dates de création<br />

fic1 -nt fic2 retourne 1 si fic1 est plus récent que fic2<br />

fic1 -ot fic2 retourne 1 si fic1 est plus vieux que fic2<br />

Une comparaisons de chaines<br />

str1 = str2 Vrai si str1 est identique à str2<br />

str1 != str2 Vrai si str1 est différent de str2<br />

-z str1 retourne 1 si str1 est de longueur nulle<br />

Une comparaison de valeurs entières<br />

val1 -eq val2 Vrai si val1 est identique à val2<br />

val1 -ne val2 Vrai si val1 est différent de val2<br />

val1 -lt val2 Vrai si val1 est plus petit que val2<br />

Structures de contrôle<br />

Les instructions " if/then/else"<br />

Sa syntaxe est la suivante :

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!