Préparation
réparation à la Certification LPI101
LPI
Chapitre 1 : Le Shell Bash
Objectifs :
A la fin de ce chapitre, vous serez en mesure :
De travailler avec la ligne de commandes
D’utiliser le manuel
De manipuler l'historique
1. Les interpréteurs de commandes
L’interpréteur de commandes, ou interprète, permet d’exécuter des instructions que vous
saisissez au clavier ou au sein d’un script et vous en retourne les résultats.
Voici quelques interpréteurs courants :
/bin/sh : le « bourne shell » ;
/bin/bash : le « bourne again shell » ;
/bin/ksh : le « korn shell » ;
/bin/csh : le « C shell » ;
/bin/tcsh : le « Tom's C shell ».
Les interpréteurs disponibles sur un système donné sont listés dans le fichier /etc/shells.
2. L’invite de commande
De façon générale, le prompt est de la forme :
utilisateur
utilisateur@nom-de-poste:repertoire-courant$
$
Par défaut, ce prompt se termine par le caractère $ pour un utilisateur normal et par un #
pour le super-utilisateur.
3. Syntaxe générale des commandes
Les commandes Unix sont de la forme générale :
nom-de
de-commande [option(s)] [argument(s)]
Une option est souvent représentée par une lettre précédée du caractère
« - ».
Une commande peut être utilisée sans aucune option et sans aucun argument :
$ ls
Une commande peut être suivie par un ou plusieurs arguments :
$mkdir rep rep1
Une commande peut être suivie d'une combinaison d’options et d’arguments :
$ ncal –M 12 1985
$ ncal –S 12 1985
Une commande peut être suivie par une ou plusieurs options :
$ ncal -S -3 12 1985
Plusieurs options peuvent être séparées par des espaces mais peuvent être aussi
rassemblées pour former un mot précédé par le caractère « - » :
$ ncal -S3 12 1985
Vous pouvez exécuter plusieurs commandes sur une seule ligne, les unes après les
autres. Pour cela il suffit de les séparer avec un point-virgule.
point
$ date ;pwd ;cal
1
Préparation
réparation à la Certification LPI101
LPI
Les commandes peuvent être aussi séparé par l'opérateur && ou l'opérateur ||
Opérateur &&
Syntaxe : liste_de_commades1 && liste_de_command
liste_de_commandes2
Si après avoir été exécutée, la liste_de
liste_ _commandes1 1 renvoie 0(VRAI
0(VRAI) alors la
liste _de _commandes2 est exécutée
Sion, c'est-à-dire la liste de commandes 1 renvoie faux, alors la liste de commandes 2
n’est pas exécutée
Opérateur ||
Syntaxe : liste_de_commades1 && liste_de_command
liste_de_commandes2
L’opérateur
opérateur || est un séparateurs de liste de commandes provoquant ll’exécution de la
liste_de_commandes2 si la liste_de_commandes
liste_de_ 1retourne Faux, c'est
c'est-à-dire une valeur
différente de 0
4. Commandes internes et externes
Il existe deux types de commandes :
Les commandes externes sont des programmes binaires présents en tant que
fichiers sur votre disque dur(ou tout autre support de données). Quand vous
exécutez la commande, ce fichier est chargé en mémoire et lancé en tant que
processus.
Les commandes internes sont internes au shell hell et exécutées au sein de celui
celui-
ci. Exemple : cd, pwd
Vous pouvez distinguer une commande interne d’une commande externe à l’aide de la
commande interne type.
5. Quelques raccourcis utiles
Quelques séquences de raccourcis de commandes sont à connaître :
[Ctrl] C : interruption du programme : il se termine.
[Ctrl] Z : stoppe le programme.
[Ctrl] D : interrompt une saisie sur un prompt >
6. Le manuel
La commande man
man est une commande UNIX permettant d'accéder aux pages pages de manuel installées sur le
système.
Syntaxe : man [-s<section>
s<section>] <nom_de_commande>
-s section : permet de spécifier la ou les sections où chercher, dans l'ordre, les pages de
manuel.
section est un numéro de section ou une liste de numéros de sections séparées par des
virgules.
Exemple : man -s 3 printf
Les pages du manuel
Section Contenu
ontenue
1 Instructions exécutable ou commandes du shell
2 Appels système (API du noyau…)
3 Appels des bibliothèques (fonctions C…)
4 Fichiers spéciaux (contenu de /dev)
5 Format des fichiers (/etc/passwd, /etc/hosts, etc.)
2
Préparation
réparation à la Certification LPI101
LPI
6 Les jeux, économiseurs d’écran, gadgets, etc.
7 Divers, commandes non standard
8 Commandes d’administration du système Linux
9 Sous--programme du noyau (souvent vide)
7. La commande history
La commande history affiche les commandes précédemment lancées par l'utilisateur
courant.
Elle utilise le contenu du fichier ~/.bash_history.
Chaque commande peut être ré-exécutée
ré en tapant ! N,, où N est le numéro de ligne dans
le résultat de la commande history.
history
Pour ré-exécuter
exécuter la dernière commande il suffit de taper !!