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.

Eléments syntaxiques<br />

P aramètres positionnels<br />

Une procédure peut recevoir des arguments. Ces paramètres sont positionnels sur la<br />

ligne de commande. La façon de les référencer peut être décrite par la procédure suivante<br />

que nous nommerons proc :<br />

____________________________________________________________________<br />

#!/bin/bash<br />

echo $0 # Nom de la commande<br />

echo $1 # Premier parametre<br />

echo $2 # Second parametre<br />

____________________________________________________________________<br />

Appelons cette procédure comme suit :<br />

___________________________________________________________________<br />

$ proc aa bbb<br />

proc<br />

aa<br />

bbb<br />

___________________________________________________________________<br />

La commande eval<br />

Le shell dispose d’une commande unique : eval qui permet une double interprétation<br />

d’une expression. Le shell interprète une fois la ligne de commande et passe ses<br />

arguments à la commande eval qui effectue une seconde interprétation.<br />

Cette commande permet de construire dynamiquement des variables ou encore permet<br />

l’exécution de commandes préalablement construites qui n’auraient pu l’être sans son<br />

utilisation. Exemple :<br />

___________________________________________________________________<br />

$ eval file=~$user/.rhosts<br />

$ echo $file<br />

/home/toto/.rhosts<br />

_________________________________________________________________________________<br />

Ici au premier passage $user est évalué et au deuxième passage l’expansion de la tilde a

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

Saved successfully!

Ooh no, something went wrong!