Académique Documents
Professionnel Documents
Culture Documents
d’exploitation
Mohamed Keita
Octobre 2021
1.
Langage Bash
27/10/2021 7
Le terminal
Porte d’entrée d’un ordinateur Un terminal offre
Le terminal
Un ordinateur na pas toujours un terminal intégré
27/10/2021 9
Terminal virtualisé
Émule le comportement d’un terminal physique dans un autre terminal
Terminaux virtuels
27/10/2021 10
Le terminal
Canal
d’entrée
Processus utilisateur
Canal
de sortie
Terminal d’attache du
processus
27/10/2021 11
Le shell
Bash
Interpréteur de commandes
Bénéficie d’un accès rapide aux mécanismes offert par le noyau de l’OS
27/10/2021 13
Un texte bash
Un texte bash
Nous|avons;NEUF&&mots&ici
27/10/2021 15
Un texte bash
RTFM
Man 1 cmd
man pour manuel : donne de l’aide
1 indique la section d’aide de la commande
1 : commandes
cmd : Correspond à la commande dont on veut consulter le manuel
$ man ls
27/10/2021 24
RTFM
Man 1 cmd
man pour manuel : donne de l’aide
1 indique la section d’aide de la commande
1 : commandes
cmd : Correspond à la commande dont on veut consulter le manuel
27/10/2021 25
Script bash
Command1
Command2
… Mon_script.sh
Variables bash
Variables bash
Variables bash
$
27/10/2021 31
Variables bash
$ a=42
$
27/10/2021 32
Variables bash
$ a=42
$ echo $a
42
$
27/10/2021 33
Variables bash
$ a=42
$ echo $a
42
$ s=‘Hello World !!!'
27/10/2021 34
Variables bash
$ a=42
$ echo $a
42
$ s=‘Hello World !!!’
Hello World !!!
$
27/10/2021 35
Variables bash
$ a=42
$ echo $a
42
$ s=‘Hello World !!!’
Hello World !!!
$ read x Saisi par l’utilisateur
Ceci est une phrase
$
27/10/2021 36
Variables bash
$ a=42
$ echo $a
42
$ s=‘Hello World !!!’
Hello World !!!
$ read x
Ceci est une phrase
$ echo $x
Ceci est une phrase
$ read x y Saisi par l’utilisateur
Ceci est une phrase
$
27/10/2021 37
Variables bash
$ a=42
$ echo $a
42
$ s=‘Hello World !!!’
Hello World !!!
$ read x
Ceci est une phrase
$ echo $x
Ceci est une phrase
$ read x y
Ceci est une phrase
$ echo $x Premier mot
Ceci
$
27/10/2021 38
Variables bash
$ a=42
$ echo $a
42
$ s=‘Hello World !!!’
Hello World !!!
$ read x
Ceci est une phrase
$ echo $x
Ceci est une phrase
$ read x y
Ceci est une phrase
$ echo $x Premier mot
Ceci
$ echo $y Tout les mots qui suivent
if cond; then
cmds
Schéma alternatif simple elif cond; then
cmds
Si alors … sinon (si alors … sinon …) else
elif et else sont optionnels cmds
fi
27/10/2021 41
Conditions de test
Conditions de test
Conditions de test
Sinon …
case mot in
Motif : chaîne de caractères pouvant utiliser motif1)
des méta-caractères …;;
motif2)
*) correspond au cas par défaut …;;
*)
…;;
esac
27/10/2021 47
Schéma itératifs
Boucle
while while cond; do
Tant que … faire … done
cmds
Schéma itératifs
Boucle
while while cond; do
Tant que … faire … done
cmds
Schéma itératifs
while cond; do
cmds
done
Boucle
while x=10
while [ $x –ge 0 ]; do
Tant que … faire … read x
echo $x
Mot clé break pour sortir de la boucle done
for
Pour chaque … dans … faire … for var in liste; do
cmds
var correspond à la variable d’itération done
Schéma itératifs
while cond; do
cmds
done
Boucle
while x=10
while [ $x –ge 0 ]; do
Tant que … faire … read x
echo $x
Mot clé break pour sortir de la boucle done
for
Pour chaque … dans … faire … for var in liste; do
cmds
var correspond à la variable d’itération done
$
27/10/2021 53
$ ./mon_echo.sh
27/10/2021 54
$ ./mon_echo.sh
$ ./mon_echo.sh toto titi tata
toto
titi
tata
$
27/10/2021 55
$ ./mon_echo.sh
$ ./mon_echo.sh toto titi tata
toto
titi
tata
$ ./mon_echo.sh "fin de » la demo
fin de
la
demo
$
27/10/2021 56
Imbrication de commandes
Imbrication de commandes
Imbrication de commandes
Imbrication de commandes
Concepts clés
• Terminal, shell
• Interpréteur de commande bash
• Commandes, langage bash
• Documentation
• Caractères spéciaux de bash
• Script bash
Commandes clés
Commandes à connaître
• date