programmation shell
Post on 11-Jul-2015
357 Views
Preview:
TRANSCRIPT
Réalisé par: Encadré par:
• csh : C Shell. Un shell utilisant une syntaxe proche du language C
• sh : Bourne Shell. L'ancêtre de tous les shells.
• bash : Une amélioration du Bourne Shell.
Affichage de texte sur la sortie
standard
Exemple :
Affichage d’une variable
Exemple :
Il existe trois types de quotes :
- les apostrophes ' ' (simples quotes) .
- les guillemets " " (doubles quotes) .
- les accents graves ` ` (back quotes) :
substitution commande
Les simples quotes ' ‘
Les doubles quotes " "
Les variables simples
Syntaxe :
variable=chaîne
Exemple :
Les tableaux
Syntaxe :
tableau=(chaîne1 chaîne2 ...)
${tableau[2]} : Affichage de la case N°2
${tableau[*]} : Affichage de toutes les
cases
Exemple :
Variables d'environnement
HOME
USER
PWD
SHELL
PATH
HOSTNAME
HISTSIZE
-u refuser les variables indéfinies
-a exporter toutes les variables
Deux moyens de programmation :
=> Direct
=> Scripts
=> Création du fichier :
Indication du nom du Shell
Exécution des commandes
syntaxe particulière :
Emplacement du Shell
Installation du Shell :
# apt-get install csh
$ chsh
=> Création du fichier :
Indication du nom du Shell
Exécution des commandes
Exemple:
« Exécutable »
chmod +x
1- « ./ nom du script »
Exemple:
2- « echo $PATH »
Exemple :
• LES STRUCTURES CONDITIONNELLES:
La structure if
La structure case
• LES BOUCLES
La structure while until
La structure for
remarque IMPORTANT
IL convient de préciser que
chaque shell à sa propre syntaxe .
Le shell par défaut est bash
1.qu’est ce qu’un test
opération dont le but est d'évaluer la valeur
d'une expression
Faussevraie
Expression
Code de retour
0 ≠0
echo $?
Syntaxe
Ces deux syntaxes sont équivalents:
test expression
[ expression ]
Exemple
on ne doit pas écrire [expression] mais
[↔ expression ↔]
↔:espace
Exemple
en bash il est possible d'affecter trois types
test différents :
Des tests sur des chaînes de caractères
Des tests sur des nombres
Des tests sur des fichiers
Exemple :
Exécution du script :
Exemple :
Exécution du script :
Syntaxe:(Plus générale)
if test condition_1 # ou if [ condition_1]
then
commandes1
[ elif test condition_2 ; then commandes ]…
[ else commandes3 ]fi # l'envers de if (fin de bloc)
Syntaxe:
case $variable in
Valeur1)
Commande1;;
Valeur2)
Commande2;;
….….
*) # tous les autres cas
Commande;;
esac # (l'envers de case) ( Fin de bloc case )
Syntaxe:
while condition until condition
do do
commandes commandes
done done
while until
Tant que
condition est vraiejusqu'à ce que
condition est vraie
Tant que
condition est fausse
Inverse
Parcourir une liste de valeurs définies.
Syntaxe:
for variable in liste-de-valeurs
do
commandes
done
$#
$0
$1, $2, $3 ... $9
$* et $@
Exemple
Substitution de variables
Substitution de commandes
Substitution de variables:
${var:-valeur}
${variable:?message}
${variable:=valeur}
${variable:+valeur}
Substitution de commande
Syntaxe
$(COMMANDE) ou bien `COMMANDE`
top related