Nous allons essayer d'explorer la programme Linux , il fournit l'interface de ligne de commande appelé communément le shell. Il existe un grand nombre tous important de shells sous Linux , et pour celà nous regardons que le shell bash qui est le plus commun. La raison en est fort simple , les dévellopeurs de bash on regroupé toutes les fonctionnalités de tous les shells dans ce programme énorme. Sub`Le
shell de Linux par défault est le
bash. Cet environnement de travail est basé sur le shell original d'Unix,
le shell bourne connu aussi sous le nom de
sh.bash signifiant
Bourne Again shell. Ce fameux
shell bourne est fourni sur la majorité des distributions Linux. On rencontre le shell pour la première fois à l'ouverture d'une session et à l'invite de commandes. Lorsque l'on y accéde , tout ce que l'on voit est un prompt ( un $ ou un # ) suivi d'un curseur clignotant n'attendant plus qu'une entrée au clavier..
ExempleSyntaxe et structure des commandes du shell bash Utiliser le shell bash à l'invite de commandes consiste souvent à taper une commande avec ses options et ses paramètres. Par exempe la commande
ls -la ~ affichera une longue liste de tous les fichiers de votre répertoire personnel, notamment ceux qui commancent par un point et qui sont en règle générale des fichiers et des répertoires de configuration. Le caractère
~ s'appelle un
tilde , c'est un raccourci de bash pour spécifier le répertoire utilisateur par défault. En tapant cette commande on affiche simplement le contenu du répertoire utilisateur.
Une commande peut être composée en trois parties :
--le nom de la commande.
--les options ou paramètres.
--les arguments.
Prenons l'exemple suivant:-On commence par taper la commande
du : elle affiche le contenu du répertoire en cours, ses sous-répertoire et l'espace qu'ils occupent sur le disque dur. Cool mais celà pose un problème , on a bien obtenu une liste d'éléments mais s'agit-il de fichiers ou de messages venant de l'espace...
-Donc il est plus judicieux d'ajouter une option : on tape donc
du -h la commande est toujours la même mais l'option
h apporte plus de précision. L'option
-h indique à la commande
du d'être plus explicite dans le résultat de son éxécution. On obtient donc plus de renseignement sur le contenu du répertoire. En effet les noms de répertoire sont suivis par leur taille exprimé en Go, Mo, ou Ko. On souhaite connaitre par exemple la taille totale du répertoir en cours , pour celà l'option
-s devient évidente donc on tape
du -s.
-Maintenant on est interessé par un répertoire en particulier , par exemple
/etc, on veut connaitre sa taille et ses sous-répertoires donc on tape la commande
du sh /etc : donc dans cet exemple nous revenons à nos trois parties soit : le nom de la commande
du, les options [color]-s et -h[/color] et l'argument
/etc.
Vous vous demandez peut être ou trouver toutes les options disponibles pour une commande particulière ? Deux excellentes sources sont mise à disposition: les pages man (on en reparlera plus tard) et la fameuse option -help qui est disponible pour la plupart des commandes , donc taper simplement du -helpUtilisation de caractères de remplacement
Les caractères de remplacement se référent à la capacité d'une commande à être éxécutée avec de nombres fichiers. par exemple l'astérisque
* ou
? sont deux caractères de remplacement destinés à remplacer n'importe quel nom ou partie de nom de fichier.
exemple :
On utilise la commande suivante pour afficher en présentant un fichier par ligne la liste des fichiers portant l'extension
.doc : donc on tape
ls -l *.docLinux complète une commande ou un nom de fichier
Vous ne vous souvenez que du début d'une commande, par exemple
up, la poisse... Bah non il suffit de rentrer le début de la commande dans le prompt et de taper sur la touche
tab...
Voici ce qui se passe:
-- Si une seule commande commence par
up, la ligne de commande est complétée et le système attend votre confirmation (touche entrée) pour l'executer.
--Si vous entendez un signal sonore, celà signifie que plus d'une commande commence par
up. Si c'est le cas, tapez de nouveau sur la touche tab afin que toutes les commandes qui corresponde soient affichées. Entrez de nouveau
up puis
t et Tab. La commande
uptime est complétée.
On peut completer aussi un nom de fichier : si vous devez rentrer un nom de fichier tapez seulement les premiers caractères et tapez sur Tab. Le shell recherche dans le répertoire en cours les noms de fichiers qui correspondent et complète avec les caractères manquants.
L'historique des commandes
Le shell a une mémoire énorme, il se souvient de tout, il conserve la trace de toute les commandes qui ont été éxécutées . Supposons que vous avez réussi à écrire une commande qui recherche et supprime sur le système tous les fichiers
core. Une commande de ce type doit ressembler à cela
find / -name core -exe rm [} \ ;. Si vous voulez reitérer cette commande il suffit de la rechercher dans la liste de l'historique et de l'executer.
Suffit de se servir des flèches directionnelles de trouver la commande puis Entrée.
Pour trouver l'historique des commandes 2 méthodes existent :
--Activation de la touche directionnelle Flèche vers le haut : c'est la plus simple . A chaque fois que vous appuyez sur cette touche, les commandes défilent. Choisir donc la commande puis touche Entrée.
--Entrez la commande
history : la liste des 20 dernières commandes est affichée.
Les alias de commande
bash met à votre disposition les alias pour créer des raccourcis pour des commandes très longue qui sont utilisé fréquement pour ce faire, chaque distribution à des alias par défault .
Pour créer un alias il suffit de taper par exemple
alias dir='ls -l" en tapant alors la commande
dir vous aurez une liste detaillée du contenu de votre répertoire. Attention toute fois à la fin de la session ou si on redémarre une nouvelle instance de shell, les alias que vous aurez crées ne seront plus disponible. J'expliquerais plus loin comment les conserver etc..
Les variables
Les variables sont des mots ou des chaines de texte qui représentent un groupe de données. Elles contiennent des informations sur votre compte et vos paramètres d'environnement. Le
shell bash dispose d'un ensemble spécifique de variables et à une manière spécifique de les utiliser et des les affecter.
Variables et variables d'environnement:
Il existe deux classes de variables :
Les variables, elle est utilisée dans un programme ou dans une session shell, elle n'existe que dans le programme ou dans la session, elle disparait à l'extérieur, elle est oubliée.
Les variables d'environnement, elle est utilisée par le shell ou par un programme, elle est en quelque sorte spécifique à votre environnement de travail. Les variables d'environnement contiennent des informations sur votre compte, sur vos paramètres, ect..
Le shell bash vous montre la différence entre ces deux types de variables : une variables peut être écrite entièrement en minuscules mais avec l'initiale en majuscule par contre une variable d'environnement est toujours en majuscules. Sub`suite en dessous