Avant d'aller dans le Terminal, il faut comprendre comment vos fichiers et dossiers sont classés, et où vous vous trouvez au départ avant de commencer à aller n'importe où et s'y perdre définitivement.
Sous UNIX, chaque utilisateur dispose d'un dossier appelé son Home Folder : littéralement, son "dossier maison". Apple l'a traduit un peu mieux en proposant de l'appeler Dossier de départ. C'est le dossier qui contient les documents de l'utilisateurs, ses préférences, bref, tout ce qui le concerne, lui et seulement lui. Sous Mac OS X, chaque dossier d'utilisateur porte le nom court de l'utilisateur, et se trouve dans un dossier situé à la racine du disque et intitulé Users. Oui, je sais, Users, c'est usant. Et oui, sur Gete.Net, les jeux de mot pourris sont gratos également, désolé pour vous.
A la racine du système, on trouve la racine ! Sous UNIX, elle se nomme root. Hein, quoi, root ? Mais root, c'est-y-pas le Super utilisateur UNIX, celui qui a tous les pouvoirs dans tout le système et qui peut faire ce qu'il veut y compris foutre en l'air tout l'OS si vous en avez envie, dit le Monsieur du fond qui a déjà entendu parler de trucs bizarres dans Mac OS X ? Eh oui, on dit aussi root pour parler de la racine du système d'exploitation. Je sais. C'est dingue, et c'est confusionnant. Mais que voulez-vous, faut bien que les informaticiens vivent dans ce bas-monde, hein
Donc, la racine du système. Sous UNIX, elle s'exprime par un "slash", c'est à dire, la barre oblique "/" (attention, sous MS-DOS, c'est un antislash : "\"). Un dossier qui se trouve à la racine, comme le dossier Users, sera donc désigné par son chemin d'accés : "/Users". Et votre dossier d'utilisateur ? Il est où alors ? Ben il se trouve dans le dossier Users. Donc, son chemin d'accés sera /Users/guillaum/ si votre nom d'utilisateur est guilaum. Y'a pas de "e" à la fin de "guillaum", parce que le nom court utilisé par UNIX fait obligatoirement moins de 8 caractères. Je sais, des limitations pareilles de nos jours, c'est lamentable, mais j'y suis pour rien, je fais ce que je peux, j'vous jure !
Pourquoi je vous parle de tout cela ? Tout simplement, pour vous indiquer que le tilde après le point de signale votre dossier de départ. Donc, quand vous voyez marqué [localhost:~], cela indique que vous êtes dans le dossier /Users/guillaum/.
Ladies and gentlemen, approchez, approchez, il est plus que temps maintenant de commencer à taper votre première ligne de commande !
Allons-y gaiement, donc. Tapez la ligne suivante après le prompt. Le quoi ? Le prompt, voyons ! Ah oui, j'ai oublié de le dire, quel étourdi je fais : le prompt, c'est le signe de pourcentage ("%") situé juste après votre nom. Il indique le début de votre ligne de commande. Cette dernière commence donc juste après ce sigle.
Voyons voir Qu'est-ce qu'on va pouvoir faire de rigolo ? Allez, commençons doucement. Tout d'abord, on va s'assurer que nous sommes bien dans le bon dossier, notre dossier de départ. Pour cela, vous allez utiliser la commande pwd. A première vue, y'a pas trop de rapport entre le fait qu'on tape pwd et que ça affiche le chemin d'accès du dossier. Mais en fait, pwd signifie print working directory (imprime (=affiche) le répertoire de travail (=répertoire où l'on se trouve à ce moment). C'est souvent comme ça avec les commandes Unix : au début, ça semble pas beau, on comprend pas ce que ça veut dire, et en fait on arrive à comprendre qu'elles ont une signification. Ce qui n'atténue rien à la douleur de les apprendre, mais c'est toujours une consolation.
Donc, pour lancer la commande, tapez simplement pwd et enfoncez ensuite la touche Entrée ou Retour Chariot. Il s'affiche quelque chose qui ressemble à ça :
Welcome to Darwin!
[localhost:~] guillaum% pwd
/Users/guillaum
[localhost:~] guillaum%
Ça va, toujours pas tombé dans le coma ? Bon, analysons ça : la commande pwd a été tapée, et le résultat s'affiche juste en dessous : /Users/guillaum , ça veut donc bien dire le dossier guillaum qui se trouve dans le dossier Users. Mais, il manque quelque chose Comment se fait-il que le nom de la partition sur laquelle se trouve le dossier n'est pas indiqué ? Ben oui, sous Mac OS 9, vous étiez habitué à trouver vos dossiers dans la partition de démarrage. Chez moi, elle s'appelle Yoshi's Island, mais là, y'a rien d'indiqué. Pour Unix, c'est normal, le nom de la partition de démarrage, c'est forcément /. Bizarre, mais bon, on est plus à ça près hein.
En tout cas, bravo à vous : vous venez de taper votre première commande Unix ! Maintenant, les membres du sexe opposé (ou plutôt, du sexe convoité comme dirait Linda Lemay :-) ) vont vous regarder d'un autre oeil, les chiens ne vous mordront plus dans la rue, et vous allez quand même perdre au loto la semaine prochaine. Eh, oh, on peut pas tout faire non plus.
Pour regarder ce qui se trouve dans un dossier, il existe une commande qui s'appelle ls. Alors, continuons dans la folie dingue, et tapons ls sans plus tarder.
[localhost:~] guillaum%ls
Desktop Documents Library Movies Music Pictures Public Sites
[localhost:~] guillaum%
Nous voyons donc ici tout ce qui se trouve dans le dossier guillaum. Notez que si vous allez dans votre dossier de départ par le Finder, c'est la même chose qui s'affiche. Ach, wunderbar.
Mais le problème, c'est que cette commande ls est un peu naze : elle est incapable de me dire si j'ai affaire ici à des dossiers ou à des fichiers. M'enfin ! Et comment qu'on fait, nous, alors ? Comment je peux savoir si je peux ouvrir un dossier ou pas ? Eh bien, tout simplement en exploitant des options pour les commandes. Tout comme nous avons la touche Option qui sert à révéler des fonctions cachées, les commandes Unix ont des options supplémentaires pour modifier leur comportement. Une option pour une commande est indiquée par un tiret suivi d'une ou plusieurs lettres. ATTENTION : il y a TOUJOURS un espace entre la commande et le tiret indiquant le début de l'option ! Par exemple, pour lister plus d'informations sur le contenu d'un dossier, on tapera :
[localhost:~] guillaum%ls -l
total 0
drwx------ 8 stephane staff 264 Apr 25 01:28 Desktop
drwx------ 6 stephane staff 264 Apr 25 01:12 Documents
drwx------ 22 stephane staff 704 Apr 25 01:24 Library
drwx------ 2 stephane staff 264 Sep 1 2001 Movies
drwx------ 2 stephane staff 264 Sep 1 2001 Music
drwxrwxrwx 3 stephane staff 264 Apr 25 01:45 Pictures
drwxr-xr-x 3 stephane staff 264 Sep 1 2001 Public
drwxr-xr-x 4 stephane staff 264 Sep 1 2001 Sites
Mince, y'a beaucoup plus de trucs qui s'affichent ! Considérez ici qu'on a fait à peu de choses près un classement en liste dans le Finder. Bon, le mauvais côté, c'est que tout n'est pas parlant. Cependant, je vais vous apprendre un ch'tit truc. Vous voyez la première colonne, celle où il y a marqué drwx---r-xr-x,par exemple ? Et bien, la première lettre indique la nature de ce qui est affiché sur la même ligne. Si la première lettre est un d, on a affaire à un répertoire (directory). Si c'est un tiret, c'est un fichier. Facile, non ? C'est vrai, c'est plus simple de s'en rendre compte avec une icône
Mais je sens qu'une question arrive dans votre tête déjà bien fatiguée : "Mais où puis-je trouver les options disponibles pour une commande ?". Rien de plus simple RTFM ! "Oui, mais comment je le trouve le Foutu Manuel ?". Ah ben faut une commande.
Unix, en effet, c'est le roi de la commande, il est tellement bon avec les commandes qu'il aurait pu être garçon de café. Et pour la documentation des commandes, vous pouvez chercher longtemps dans l'aide Apple, y'a que dalle. Non, tout existe, mais tout est enfoui dans la commande man. Tapez man, puis suivi d'une commande, suivi de la touche Entrée (comme d'hab Toutes les commandes se finissent par un retour à la ligne, je ne vous le dirai plus désormais, sauf mention spéciale). Essayons donc avec ls :
[localhost:~] guillaum% man ls
man: Formatting manual page...
LS(1) System General Commands Manual LS(1)
NAME
ls - list directory contents
SYNOPSIS
ls [-ACFLRSTWacdfgiklnoqrstux1] [file ...]
DESCRIPTION
For each operand that names a file of a type other than directory, ls
displays its name as well as any requested, associated information. For
each operand that names a file of type directory, ls displays the names
of files contained within that directory, as well as any requested, asso-
ciated information.
Blah blah blah. Là, vous constaterez plusieurs problèmes :
Pour en lire un peu plus, appuyez sur la touche Entrée pour faire défiler ligne par ligne. Si vous souhaitez avancer page par page, appuyez plutôt sur la barre d'espace. Tout en bas, contrasté, s'affiche un pourcentage : il s'agit du pourcentage de lignes du manuel déjà affichées. Quand vous atteignez 100%, vous avez atteint la fin du manuel. A ce moment, le prompt s'affiche à nouveau. Ouf.
Cependant, pendant la longue descente, vous vous serez peut-être rendu compte que les options sont indiquées dans le manuel, sous leur forme -nom_de_l'option. C'est donc ici qu'on peut apprendre que a sert à lister tous les fichiers dans un répertoire, y compris les fichiers invisibles. Essayons
[localhost:~] guillaum%ls -a
total 0
. .Trash Movies Sites
.. Desktop Music
.CFUserTextEncoding Documents Pictures
.DS_Store Library Public
Voila qui devient intéressant. Z'avez vu ? Y'a trois éléments qui n'apparaissent pas dans le Finder ! Et chacun de ces éléments commence par un point ! On pourrait en conclure qu'un fichier dont le nom commence par un point est invisible dans le Finder Et le pire, c'est qu'on aurait raison.
Et si la page du manuel est trop longue et que j'en ai marre d'appuyer sur espace ?
Ah oui, bonne question. Enfoncez la touche Contrôle (ctrl) et sans relâcher, appuyez sur la touche C. Miracle, vous revenez au prompt. La plupart du temps, quand une commande s'affiche et que son action est permanente, vous pourrez utiliser cette commande. On l'affiche sous la forme ^C, l'accent circonflexe signifiant donc la touche Contrôle