Scripting BASH

Passage de paramètres

Il est possible de passer des paramètres à un fichier de commandes. Dans un fichier de commandes les neuf premiers paramètres sont des variables portant les noms 1, 2, … 9. À l’intérieur du fichier de commandes, pour référencer ces paramètres, on utilise la syntaxe $1, $2, … $9.

Par exemple un fichier de commandes « RUN » qui compile un fichier passé en paramètre :

#!/bin/sh
cc -o $1 $1.c

Et nous pourrions l’invoquer par : RUN gestion_notes

Il n’y a pas de moyen de référencer directement les paramètres au-delà du neuvième. On verra plus loin (cf commande shift) comment il faut procéder. Par contre, il y a un moyen de référencer tous les paramètres: c’est la variable *.

Soit le fichier « VARETOILE »

#!/bin/sh
echo $*

> VARETOILE f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 renverra f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12

Enfin, il faut savoir que la variable 0 est positionnée avec le nom du fichier de commandes qui est exécuté :

Soit le fichier « VARZERO »

#!/bin/sh
echo $0

> VARZERO f1 renverra VARZERO

Print Friendly, PDF & Email