From 143c417f83130e48cc6a447cb4303241d234a7f7 Mon Sep 17 00:00:00 2001 From: george Date: Sat, 23 Nov 2002 18:59:38 +0000 Subject: [PATCH] =?UTF-8?q?fs.html=20->=20systemes=5Ffichiers.tml,=20mais?= =?UTF-8?q?=20il=20sera=20=C3=A0=20virer=20parce=20qu'il=20fait=20double?= =?UTF-8?q?=20emploi.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 00TODO | 1 - unix/systemes_fichiers.tml | 252 +++++++++++++++++++++++++++++++++++++ 2 files changed, 252 insertions(+), 1 deletion(-) create mode 100644 unix/systemes_fichiers.tml diff --git a/00TODO b/00TODO index 0efde30..ada03ce 100644 --- a/00TODO +++ b/00TODO @@ -85,7 +85,6 @@ cours/images/xfig.html cours/index.html cours/rcs.html cours/unix/cercles.html -cours/unix/fs.html cours/unix/imprimer.html cours/unix/jeux.html exos/contact.html diff --git a/unix/systemes_fichiers.tml b/unix/systemes_fichiers.tml new file mode 100644 index 0000000..3182e3b --- /dev/null +++ b/unix/systemes_fichiers.tml @@ -0,0 +1,252 @@ + + + + +Systèmes de fichiers + + + +

Système de fichiers

+ +

Notions

+ +

+Les répertoires sont appelés directories en anglais. Un répertoire +est une boîte qui peut contenir des fichiers et d'autres répertoires (comme +les catalogues de MS-DOS, ou les dossiers du Macintosh). Des exemples de +répertoires : +

+ +
+/users  
+/bin   
+/usr/local/bin
+
+ +

+On désigne les fichiers (et les répertoires) contenus dans un répertoire +par : +

+ +
nom de répertoire/nom de fichier
+ +

+Par exemple : /bin/sh est le fichier sh contenu +dans le répertoire /bin. +

+ +

+Les répertoires sont organisés en arbre, c'est-à-dire qu'ils sont tous +contenus dans un répertoire appelé la racine, et désigné par "/". +Chaque répertoire contient deux répertoires spéciaux : +

+ + + + +

+Exemples : +/users/92/. est le même répertoire que /users/92, +/users/92/.. est le même répertoire que /users. +

+ +

+Chaque utilisateur a un home-directory, ou répertoire +personnel. C'est l'endroit ou il range ses fichiers. Sur les machines +de la salle S, le répertoire personnel a pour nom +/users/année/groupe/nom-de-login. +

+ +

Exemples : +/users/92/maths/vous, +/users/formel/doligez. +

+ +

+On peut aussi désigner le répertoire personneld'un autre utilisateur par le +nom de login de l'utilisateur précédé d'un tilde (le caractère tilde). +Exemple : ~leroy. +

+ + +

Noms de fichiers

+ +

+Un nom de fichier qui commence par / est dit absolu. +Il est interprété en partant de la racine, et en descendant dans l'arbre. +Un nom de fichier qui ne commence pas par / est +relatif. Il est interprété en partant du répertoire +courant. Le répertoire courant est initialement (au moment où vous vous +connectez) votre répertoire personnel ; le répertoire courant est le +répertoire dans lequel vous vous trouvez. +

+ +

+Exemples : +/users/formel/doligez/foo est un nom (ou chemin) absolu. +bar est un nom relatif. Il désigne un fichier appelé +bar et situé dans le répertoire courant. Le fichier exact dont +il s'agit dépend donc de votre répertoire courant. +

+ +

+Remarque : +Le seul caractère spécial dans les noms de fichiers est le slash +/. Un nom de fichier peut avoir jusqu'à 255 caractères, et +contenir un nombre quelconque de points. +

+ +

Commandes pour manipuler le système de fichiers

+ + +

pwd

+ +

+Affiche le répertoire courant. +Exemple : +

+ +
chaland ~ $ pwd
+/users/formel/doligez
+ +

cd

+ +

+Change le répertoire courant. Si on ne lui donne pas d'argument, on +retourne dans le répertoire personnel. Exemple : +

+ +
+chaland ~ $ pwd
+/users/formel/doligez
+chaland ~ $ cd ..
+chaland /users/formel/ $ cd
+chaland ~ $ pwd
+/users/formel/doligez
+ +

mkdir

+ +

+Crée un nouveau répertoire, (presque) vide. Il ne contient que +. et ... +

+ +

rmdir

+ +

+Supprime un répertoire vide. Si le répertoire contient autre +chose que . et .. ça ne marche pas. +

+ +

mv

+ +

+Renomme un fichier, mais peut aussi le déplacer d'un répertoire à +un autre. Exemple : +

+ +
+chaland ~ $ mkdir foo
+chaland ~ $ nano bar
+chaland ~ $ mv bar foo/bar2
+chaland ~ $ cd foo
+chaland ~/foo $ pwd
+/users/formel/doligez/foo
+chaland ~/foo $ ls
+bar2
+ +

ls

+ +

+Liste les fichiers et les répertoires qu'on lui donne en arguments, +ou le répertoire courant si on ne lui donne pas d'argument. ls +ne liste pas les fichiers dont le nom commence par . C'est +pourquoi . et .. n'apparaissent pas ci-dessus. +

+ +

Raccourcis pour les noms de fichiers

+ +

+Il est parfois ennuyeux d'avoir à taper un nom complet de fichier comme +nabuchodonosor. Il est encore plus ennuyeux d'avoir à taper une +liste de fichier pour les donner en arguments à une commande, comme : +cc -o foo bar.c gee.c buz.c gog.c. Pour éviter ces problèmes, +on peut utiliser des jokers (wildcards en anglais). +

+ +

+Une étoile * dans un nom de fichier est interprétée par le shell +comme « n'importe quelle séquence de caractères ». +Exemple : cc -o foo *.c. +

+ +

+Pour interpréter l'étoile, le shell va faire la liste de tous les noms de +fichiers du répertoire courant qui ne commencent pas par . et +qui finissent par .c Ensuite, il remplace *.c par +cette liste (triée par ordre alphabétique) dans la ligne de commande, et +exécute le résultat, c'est-à-dire par exemple : cc -o foo bar.c buz.c +foo.c gee.c gog.c. +

+ +

+On a aussi le ?, qui remplace un (et exactement un) caractère +quelconque. Par exemple, *.? liste tous les fichiers sont +l'extension n'a qu'une seule lettre. +

+ +

+La forme [abcd] remplace un caractère quelconque parmi +a, b, c, d. Enfin, +[^abcd] remplace un caractère quelconque qui ne se trouve pas +parmi a, b, c, d. +

+ +

+Exemple : echo /users/* +affiche la même chose que +ls /users +(La commande echo se contente d'afficher ses arguments.) +

+ +

+Attention : +

+ + + +

+Interlude : comment effacer un fichier nommé ?* ? On ne peut +pas taper rm ?* car le shell remplace ?* par la +liste de tous les fichiers du répertoire courant. On peut taper rm -i +* qui supprime tous les fichiers, mais en demandant confirmation à +chaque fichier. On répond no à toutes les questions sauf +rm: remove ?*?. Autre méthode : utiliser les mécanismes de +quotation (voir ci-dessous). +

+ +
+Auteurs : Roberto Di Cosmo, Xavier Leroy; Marc Espie. +Mise à jour d'Émilia Robin et de Nicolas George. +Dernière modification le 2002-11-23. +
+ + +