[Plan du site]
Vous êtes ici ---
> Le Site du Zéro
> Les tutoriels
> Non-Officiels
> Systèmes d'exploitation
> Linux
> Apprenez le Shell > Initiation aux lignes de commande > Les lignes de survie
> Lecture du tutoriel
Les lignes de survie
Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Bonjour les zéros !! Bienvenue dans le cours de Shell pour les débutants.
Je suis Jarvis, et je suis un utilisateur de Linux.
Ce premier chapitre vous permettra de ne pas être trop déboussolé par le terminal, de connaître les lignes de commandes de base et de comprendre comment gagner du temps.
On décolle !!!
FICHIERS
Je vais d'abord vous expliquer comment sont hierarchisés les fichiers sur votre disque dur.
Il y a différents types de fichiers :
- Les fichiers ordinaires contiennent des informations. Ils peuvent contenir du son (.mp3, .ogg,...), du texte (.odt, .txt),...
- Les fichiers spéciaux permettent le classement (les répertoires) des fichiers ordinaires , la possibilité d'accéder aux fichiers ordinaires de divers périphériques (imprimante, scanner, lecteur numérique, clé usb...) et bien d'autres possibilités...
ARBORESCENCE
Ensuite, il faut comprendre que les fichiers sont rangés sous la forme d'arbre (arborescence) :
C'est, bien sûr, simplifié ; j'ai d'autres fichiers.
/ est la racine.
Ensuite, dans le disque dur, on a plusieurs fils :
bin, boot, dev, etc, home, lib, mnt, opt, ...
Chaque fils a un rôle très important pour le bon fonctionnement de Linux.
Étant donné que ce n'est pas un cours d'administration Linux, je vais donner quelques fils importants pour la suite.
- Le fils home contient les fichiers personnels des utilisateurs.
- Le fils bin contient une grande partie des fonctions que nous allons utiliser dans la suite, ce sont des programmes binaires.
- Le fils dev contient l'ensemble des périphériques présents dans l'ordinateur.
Si cela vous passionne, je vous donne une bonne adresse pour approfondir tout ça :
ici.
Pour résumer, faites la différence entre fichier ordinaire et fichier spécial, et comprenez que le disque dur est rangé de façon arborescente.
Nous avons appris comment sont rangés les fichiers... Maintenant nous allons apprendre avec quel outil nous allons les manipuler.
Pour cela, nous utilisons un terminal...
Ah, mais qu'est-ce donc, un terminal ?
Le mieux est d'en décrire les différents types.
Le terminal graphique
C'est le terminal que tout utilisateur actuel connait : on utilise la plupart du temps la souris, un peu le clavier (pour l'instant, je suis dans un terminal graphique et je suis en train d'utiliser le clavier, je vous rassure...). À l'écran, il apparait de beaux dessins qui font rêver tout le monde... Et ainsi, nous pouvons visualiser grâce à un logiciel les fichiers grâce à un logiciel.
Pour la petite histoire, cette technologie a été inventé par Xerox durant les années 70. Mais c'est Steve Jobs, en 1984, qui a commercialisé le premier ordinateur utilisant le mode graphique : le Macintosh. Cependant, cette technologie demandait beaucoup de ressource mémoire à l'époque...
Voici les principaux :
Windows :
Mac OS :
Gnome :
KDE :
Nous n'allons pas l'utiliser dans le cours.
Le terminal texte
Non, restez !!!

Dans ce terminal, on utilise uniquement le clavier et il n'apparait donc à l'écran que du texte.
C'est le terminal qu'on utilisait il y a bien longtemps dans une galaxie très lointaine... Enfin, certains ont dû connaitre ce terminal : le minitel en est un modèle en mode texte : il a été créé par des français durant les années 60, et commercialisé dès le début des années 80 ; c'est l'ancêtre d'internet. Il y en a aussi qui ont dû connaitre le DOS créé en 1981 par Microsoft, mais il y avait un terminal graphique en complément...
Première révélation : sous Linux, on peut passer facilement dans un terminal en mode texte : pour cela, on tape (je vous conseille de ne pas le faire tout de suite) par exemple : Ctrl + Alt + F1.
Il va vous demander votre pseudo de connexion et votre mot de passe associé.
Faites-le.
Puis tapez :
Code : Console
Vous allez lire sur l'écran de votre ordinateur :
Code : Console
Il se trouve donc :
Ctrl + Alt + F7 ou Ctrl + Alt + F8 permettent de revenir dans un terminal graphique.
Quand vous avez
mémorisé les touches, vous pouvez le faire.
Hein c'est pratique !
Mais elle sert à quoi, la commande tty ?
La commande
tty (
tele
typewriter) permet de connaitre le nom du terminal utilisé ; ainsi, il vous dit que l'ordinateur utilise le terminal tty1.
/dev/tty1 est un fichier spécial, mais ce n'est pas un répertoire.
Voici quelques oeuvres des terminaux en mode texte :
- DOS :

- Linux :

Je vous rassure : nous n'utiliserons pas ce terminal car ce n'est pas facile d'y travailler, suivre le cours, regarder la télé et chatter sur
Pidgin, le tout en même temps.
Le pseudo-terminal
Ce terminal est un logiciel qui permet de simuler le fonctionnement du terminal utilisé sous Linux. L'affichage est un peu plus sympatique que le précédent, il sera plus facile pour suivre le cours en même temps.
Faites :
Code : Console
Code : Console
/dev/pts est un dossier virtuel dans lequel sont créés les pseudo-terminaux (en anglais :
pseudo-terminals).
/dev/pts/0 est un fichier spécial mais ce n'est pas un répertoire.
Voici quelques exemples :
- En noir :

- En blanc :

- En transparent :

Il y a plein de jolis pseudo-terminaux...
Les plus connus s'appellent
xterm, gterm, konsole, Eterm, Aterm ou rxvt...
Je vous conseille d'utiliser un pseudo-terminal pour la suite du cours.
Je vais maintenant vous donner tous les outils nécessaires pour visualiser les fichiers et pour se déplacer dans l'arborescence

Ouvrez un pseudo terminal...
Oui, on fait quoi après? où je suis?
pwd : Print Working Directory
Ah bonne question

Tapez :
Code : Console
Cela va vous mettre où vous êtes dans l'arborescence
Normalement, au début, vous êtes dans votre répertoire personnel.
Code : Console
C'est à dire :
which
Mais, Jarvis, il y a un truc que je ne comprends pas : tu m'as dit qu'on allait utiliser la plupart des programmes du répertoire /bin/ mais je ne vois pas de /bin/ quand tu appelles pwd...
En fait, pwd est un raccourci de /bin/pwd. Ne vous inquiétez pas linux gère tout cela, vous pourrez le paramètrer plus tard quand vous serez plus grand
Tapez :
Code : Console
Code : Console
La fonction which permet de savoir à quel fichier correspond une fonction shell.
ls : LiSt
Tapez :
Code : Console
Vous allez voir défiler tous vos fichiers dans le répertoire courant (celui où vous êtes actuellement

).
C'est à dire :
Bon on bouge quand?
cd : Change Directory
Tout de suite mon cher ami

On utilise pour cela la fonction cd.
Cette fonction permet d'aller vers un fils du répertoire courant.
Par exemple vous avez remarqué un répertoire "ogg" :
Code : Console
Rien ne s'affiche si le répertoire existe : Cela veut dire que cela a marché!!
Tapez pwd pour vérifier que ça a bien marché:
Code : Console
Donc cd fait cela :
Vous adaptererez bien évidement selon votre petit répertoire
Oui mais si le répertoire n'a plus de fils on est bloqué?
Mais non

Il suffit de taper :
Code : Console
On se retrouve alors avec son père (ou répertoire parent)
Nous allons voir de bons "tuyaux" pour gagner du temps.
COMPLÉTION AUTOMATIQUE
C'est un peu long à taper si le répertoire s'appelle anticonstitutionnellement...
On vous a déjà dit que l'informaticien est feignant ?
Il y a une solution pour ne pas tout retaper.
Code : Console
Appuyez sur Tab (c'est la touche juste à gauche de la touche "A").
Il y a trois solutions, là :
- soit c'est le seul fichier commençant par a, et il va compléter :
Code : Console | $ cd anticonstitutionnellement |
- soit il y a d'autres fichiers qui commencent par a, et si vous appuyez une seconde fois sur Tab, il va vous indiquer lesquels.
Exemple :
Code : Console | anarchiste analphabete.pdf |
- soit il y a beaucoup de fichiers qui commencent par a, et si vous appuyez une seconde fois sur Tab :
Code : Console | Display all 2031 possibilities? (y or n) |
Ce qui veut dire : "vous voulez que je vous montre les 2031 mots possibles que je peux écrire ?"
et là, vous devez répondre "n" puis entrée si vous êtes raisonnables : enfin, faites comme vous voulez. 
Pour éviter cette dernière solution, écrivez plutôt :
Code : Console
puis appuyez sur la touche Tab.
Là, vous êtes presque sûrs que que cela va vous afficher direct (sauf si vous êtes contre tous

).
Cela marche pour tous les fichiers, et également pour les commandes.
RETROUVER UNE ANCIENNE COMMANDE
Si je veux refaire une commande plusieurs fois, c'est chiant de retaper à chaque fois...
Si vous voulez réécrire une ligne de commande : appuyez sur les flèches haut et bas du clavier.
Les flèches gauche et droite permettent de déplacer le curseur si par exemple on a oublié d'écrire quelque chose...
Je fais plein de cd, y a pas un moyen de faire tout ça d'un coup ?
Si, bien sûr...
CHEMIN ABSOLU ET RELATIF
En utilisant le chemin absolu :
Code : Console
On part de la racine / puis on cherche le répertoire où on veut aller... On peut utiliser la touche Tab quand on n'est pas trop sûr de l'orthographe.
En utilisant le chemin relatif :
Code : Console
Il faut tenir compte ici du répertoire actuel. On va voir le père de ce répertoire, on va voir le père de ce nouveau père, et on va sur le répertoire
papa :
Encore une fois, utilisez la touche Tab pour être sûrs qu'on peut aller sur
papa.
Vous pouvez utiliser cela pour d'autres fonctions, comme
ls.
Essayez :
Code : Console
Vous allez voir la plupart des fonctions que l'on va étudier dans le cours.
Cette partie sur le chemin absolu et le chemin relatif est très importante pour la suite du cours !
D'autres astuces pour taper moins de cd...
Se retrouver à la racine : cd /
Code : Console
Vous vous trouvez à la racine.
Se retrouver à la maison : cd ~
Code : Console
C'est magique : vous vous trouvez automatiquement sur votre répertoire personnel.
Pour mon cas : ~ = /home/jarvis
Ainsi, il est possible de taper :
Code : Console
Et si j'ai envie d'aller dans le home de ma copine Alice ?
Code : Console
Se retrouver là où on se trouvait avant : cd -
Code : Console
Cela permet de revenir où vous étiez dans l'arborescence avant le dernier cd.
RACCOURCIS CLAVIER
Nous allons finir le chapitre par des raccourcis clavier bien pratiques.
Si j'ai envie d'effacer l'écran en totalité (inutile de secouer l'écran

) :
Ctrl + l.
Quand l'écran est surchargé d'informations, cela peut être pratique de tout effacer.
Cela n'efface pas la ligne en cours.
Pour effacer tout ce qu'on a écrit à gauche du curseur, il est possible de faire plein de retours arrières, mais il y a plus simple :
Ctrl + u.
Pour effacer un mot qu'on a écrit à gauche du curseur :
Ctrl + w.
Pour ramener le curseur au début d'une ligne :
Ctrl + a.
Pour ramener le curseur en fin d'une ligne :
Ctrl + e.
Bon ben voilà, vous connaissez déjà pas mal de fonctions shell :
tty,
pwd,
ls,
cd,
which et
history.
Ah, il faut bien commencer...
Comme vous pouvez le remarquer, je commence le shell en douceur, on n'a pas encore modifié votre disque dur... Comme ça, vous ne faites pas de bêtises.