Gestion des fichiers et des repertoiresApres une petite introduction au shell , nous allons maintenant parler de la gestion des fichiers et des repertoires . Tout d'abord , on distingue plusieurs types de fichiers :
Les repertoires ne sont pas a presenter , ils correspondent a nos chers dossiers sous Windows , ils permettent d'organiser le disque dur . Les repertoires contiennent des fichiers normaux et eventuellement des sous-repertoires . Ces repertoires peuvent aussi contenir des fichiers speciaux , qui representent les interfaces avec les peripheriques geres par Linux . Comme on peut le visualiser , le point de depart est / , comme C:\ dans Windows . C'est le repertoire racine . Je passe la description des chemins d'acces absolus ou relatifs des fichiers qui n'est pas trop difficiles a comprendre . Avant de continuer , un petit mot sur le repertoire maison et courant . Lorsque vous vous connectez en tant que root ou administrateur systeme , vous atterissez directement dans votre repertoire maison (home directory) qui est bien evidemment /root . Le root peut definir de nouveaux utilisateurs a l'aide de la commande adduser , exemple : adduser Fred et son repertoire maison sera dans le repertoire /home . Lorsque Fred voudra se connecter sur le systeme , il sera directement place dans son repertoire maison , a savoir /home/Fred qui est donc aussi son repertoire courant . 1*/ commande cd (change directory) : cette commande permet de modifier le repertoire courant mais pas le repertoire personnel . Il suffit d'indiquer le chemin d'acces comme parametre de la commande cd . Voila ce que cela donne : cd nom_de_repertoire (cd se place dans le repertoire indique) cd ~ (cd ramene l'utilisateur dans son repertoire personnel) cd .. (cd remonte dans le repertoire parent) 2*/ commande ls (listing files) : cette commande permet de visualiser le contenu d'un repertoire . syntaxe : ls [options] [nom_de_repertoire] et deux de ses options a connaitre : ls -l (chaque fichier est affiche avec une serie d'informations) ls -a (affiche les fichiers et repertoires dont le nom commence par un point)on peut aussi combiner les options , telle que ls -al exemple :
- type du fichier (soit "-" pour un fichier normal , soit "d" pour un repertoire) - autorisation d'acces (que j'expliquerais dans un prochain article) - compteur de liens (que j'expliquerais dans un prochain article) - proprietaire du fichier - groupe auquel ce fichier appartient - taille du fichier en octets - date et heure de la derniere modification - nom de fichier ou repertoire Pour en savoir plus sur cette commande et celles qui vont suivre , un petit --help ou more ne feront pas de mal . 3*/ commande cat (concatenate) et file : elles servent a visualiser le contenu d'un fichier syntaxe : cat nom_de_fichier [nom_de_fichier,…] file nom_de_fichier [nom_de_fichier …] la commande cat ne doit etre applique qu'aux fichiers pour lesquel la commande file a affiche le contenu suivant : - english text - ascii text - commands text Il ne faut pas utiliser la commande cat sur des fichiers data ou excecutable . 4*/ commande pwd (print working directory) : elle permet de connaitre a tout moment le repertoire courant .
syntaxe : mkdir nom_de_repertoire [nom_de_repertoire1,...] 6*/ commande rmdir (remove directory) : elle permet de supprimer un repertoire vide . En effet , tant qu'un repertoire contient des fichiers , il ne pourra etre supprime . syntaxe : rmdir nom_de_repertoire [nom_de_repertoire1,...] Les chemins d'acces de ces repertoires peuvent etre absolus ou relatifs . 7*/ commande touch : elle permet de creer un fichier vide a condition qu'aucun fichier n'existe deja . syntaxe : touch nom_de_fichier [nom_de_fichier1, ...] 8*/ commande cp (copy) : elle permet de copier un fichier syntaxe : cp Fichier1 Fichier2 cp Fichier1 [Fichier2 Fichier3 ...] repertoire dans le premier cas , cp cree une copie du fichier1 dans le deuxieme cas , cp copie le ou les fichiers specifies dans un repertoire donne Si le fichier cible existe deja , il sera simplement supprime et ceci sans le moindre avertissement . Alors attention ! 9*/ commande mv (move) : elle permet a la fois de deplacer ou de renommer un fichier . syntaxe : mv Fichier1 Fichier2 mv Fichier1 [Fichier2 Fichier3 …] repertoire dans le premier cas , mv renomme le fichier1 en fichier2 dans le deuxieme cas , mv deplace le ou les fichiers dans le repertoire indique tout en gardant leur nom Meme recommandation que pour cp , si le fichier cible existe deja , il sera supprime sans avertissement . 10*/ commande rm (remove) : elle permet de supprimer un fichier syntaxe : rm [options] Fichier1 [Fichier2 ...] La egalement , la suppression est irremediable , sans demande de confirmation . Voici deux options pratique : -i (affichage d'une demande de confirmation , repondre par y ou n) -r (supprime tout le repertoire meme si il contient des fichiers) 11*/ Commande ln (link) : elle permet d'affecter plusieurs noms a un fichier . A la difference de la commande cp , ln cree un lien entre le fichier initial et les copies creees . C'est a dire que la modification de la copie modiera egalement le fichier initial . Syntaxe : ln Fichier1 Fichier2 En interne , Linux enregistre les fichiers non pas sur la base d'un nom , mais leur donne un numero unique . Ce numero peut etre visualise grace a la commande ls -i Voyons cela par un exemple concret :
Le seul inconvenient est que la commande telle qu'elle ne s'applique qu'aux fichiers et non aux repertoires . Pour y remedier , il y a les liens symboliques (symbolic links) : option -s .
Avec tout ce que vous venez de voir , vous devriez deja faire pas mal de choses sous le shell . J'ai hesite de parler de l'arborescence de Linux et de la signification des repertoires standards , mais pour ne pas alourdir l'article ainsi que votre cerveau , j'en consacrerai un prochain article . Amusez vous bien pendant ce temps ! Amadeorus |