Introduction
Bienvenue dans cet atelier consacré aux opérations de base sur les fichiers sous Linux ! Dans l'univers Linux, presque tout est considéré comme un fichier, ce qui rend la manipulation de ces derniers fondamentale pour maîtriser le système. Cet atelier vous guidera à travers les commandes les plus courantes pour gérer vos fichiers et répertoires, vous aidant ainsi à devenir plus agile dans la navigation et l'organisation de votre environnement Linux.
Comprendre votre environnement de travail
Sous Linux, chaque utilisateur possède généralement un « répertoire personnel » (home directory), représenté par le symbole ~. Cependant, dans cet environnement d'expérimentation, nous commencerons dans le répertoire /home/labex/project, qui est notre répertoire de travail par défaut.
Tout d'abord, veuillez ouvrir un terminal sur le Bureau OU basculer vers l'onglet terminal de l'interface de l'atelier.

Commençons par identifier notre emplacement actuel :
pwd
pwd signifie « print working directory » (afficher le répertoire de travail). Cette commande affiche votre position exacte dans l'arborescence des fichiers. Elle est indispensable pour s'orienter dans la structure Linux. Vous devriez voir /home/labex/project s'afficher.
Explorons maintenant la relation entre le répertoire courant et le répertoire personnel :
echo ~
Note : Si vous ne parvenez pas à saisir le symbole
~dans le terminal du Bureau en raison de la configuration de votre clavier, vous pouvez essayer de passer à l'onglet Terminal indépendant situé en haut à gauche de l'interface de la machine virtuelle.
Cette commande affichera le chemin vers votre répertoire personnel, qui devrait être /home/labex.
Pour visualiser le contenu de votre répertoire actuel, utilisez :
ls
Cela listera les fichiers et dossiers présents dans votre répertoire de travail actuel (/home/labex/project).
Vérifions également le contenu de votre répertoire personnel :
ls ~
Cette commande liste le contenu de votre « home », qui peut différer de votre répertoire de travail actuel.
Bien saisir la distinction entre votre répertoire de travail actuel et votre répertoire personnel est essentiel pour naviguer efficacement dans le système de fichiers Linux.
Naviguer dans le système de fichiers
Linux utilise ce que l'on appelle un « système de fichiers hiérarchique ». Imaginez cela comme un grand arbre avec des branches. Le tronc principal est appelé le « répertoire racine » (root), représenté par une simple barre oblique /. Tous les autres répertoires et fichiers partent de cette racine.
Voyons comment se déplacer dans cette structure :
- Vérifiez votre emplacement actuel :
pwd
Le résultat devrait être /home/labex/project. Si ce n'est pas le cas, vous êtes peut-être dans un autre dossier. Utilisez cd /home/labex/project pour revenir au point de départ.
- Affichez le contenu de votre répertoire actuel :
ls
Cela liste tous les fichiers et dossiers là où vous vous trouvez. Le dossier /home/labex/project est vide pour l'instant, donc rien ne s'affichera.
- Remontez d'un niveau vers le répertoire parent :
cd ..
Le symbole .. signifie « le répertoire situé juste au-dessus ». Après cette commande, tapez à nouveau pwd. Vous devriez maintenant être dans /home/labex.
- Revenez à votre répertoire de projet :
cd project
Cela vous ramène dans /home/labex/project.
- Allez directement à votre répertoire personnel :
cd ~
Le ~ est un raccourci pour votre répertoire personnel. Tapez pwd pour confirmer que vous êtes bien dans /home/labex.
- Revenez au répertoire de projet en utilisant un chemin absolu :
cd /home/labex/project
On parle de « chemin absolu » car il part de la racine (/) et donne l'emplacement complet.
Créer des fichiers et lister le contenu des répertoires
Maintenant que nous savons nous déplacer, créons quelques fichiers et explorons les options d'affichage.
D'abord, assurez-vous d'être dans le répertoire /home/labex/project :
cd /home/labex/project
- Créons quelques fichiers :
touch file1.txt
La commande touch est utilisée pour créer un fichier vide. Si le fichier existe déjà, elle met à jour sa date de modification sans changer son contenu. C'est un moyen simple de créer de nouveaux fichiers vides.
echo "Hello, Linux" > file2.txt
Cette commande effectue deux actions :
echoest une commande qui affiche du texte.- Le symbole
>redirige la sortie deechovers un fichier nomméfile2.txt. Si le fichier n'existe pas, il est créé. S'il existe, son contenu est remplacé.
echo "Hidden file" > .hiddenfile
Ceci crée un fichier caché. Sous Linux, tout fichier ou répertoire dont le nom commence par un point (.) est considéré comme masqué.
- Créons maintenant un répertoire :
mkdir testdir
La commande mkdir (abréviation de « make directory ») crée un nouveau dossier nommé testdir.
- Liste simple :
ls

Cela affiche le contenu de votre répertoire actuel. Vous devriez voir file1.txt, file2.txt et testdir.
- Liste détaillée :
ls -l
L'option -l (un L minuscule, pas le chiffre 1) affiche un format « long ». Vous verrez des détails supplémentaires comme les permissions, le propriétaire, la taille et la date de modification.
- Afficher les fichiers cachés :
ls -a
Cela affichera tous les fichiers, y compris le fichier caché .hiddenfile que nous avons créé.
- Combiner les options :
ls -la
Ceci combine le format long (-l) et l'affichage de tous les fichiers (-a).
- Lister le contenu d'un répertoire spécifique :
ls -l testdir
Cela liste le contenu du dossier testdir (qui devrait être vide pour le moment).
Copier des fichiers et des répertoires
Maintenant que nous avons des fichiers, apprenons à les copier :
- Copier un fichier :
cp file1.txt file1_copy.txt
Ceci crée une copie de file1.txt nommée file1_copy.txt dans le répertoire actuel.
Vérifions la copie :
ls
- Copier un fichier vers un autre répertoire :
cp file2.txt testdir/
Ceci copie file2.txt à l'intérieur du répertoire testdir.
- Copier un répertoire :
cp -r testdir testdir_copy
L'option -r signifie « récursif ». Elle est indispensable pour copier des répertoires afin de s'assurer que tout leur contenu est également copié.
- Vérifier nos copies :
ls
ls testdir
ls testdir_copy

Déplacer et renommer des fichiers et des répertoires
La commande mv est utilisée à la fois pour déplacer et pour renommer sous Linux :
- Renommer un fichier :
mv file1.txt newname.txt
Ceci renomme file1.txt en newname.txt.
- Déplacer un fichier vers un répertoire :
mv newname.txt testdir/
Ceci déplace newname.txt dans le répertoire testdir.
- Renommer un répertoire :
mv testdir_copy new_testdir
Ceci renomme testdir_copy en new_testdir.
- Déplacer et renommer en une seule commande :
mv testdir/newname.txt ./original_file1.txt
Ceci sort newname.txt de testdir et le renomme en original_file1.txt dans le répertoire actuel.
- Vérifier nos modifications :
ls
ls testdir

Supprimer des fichiers et des répertoires
La suppression de fichiers et de répertoires est une opération puissante. Contrairement aux interfaces graphiques, la ligne de commande ne possède souvent pas de « Corbeille ». Les suppressions effectuées avec rm sont généralement définitives. Vérifiez toujours vos commandes avant de les valider !
Nettoyons les fichiers et répertoires que nous avons créés. Assurez-vous d'être dans le répertoire /home/labex/project.
pwd
ls -a
Vous devriez voir des fichiers comme original_file1.txt, .hiddenfile, file2.txt, et des répertoires comme testdir, new_testdir.
-rw-rw-r-- 1 labex labex 12 May 3 08:44 .hiddenfile
-rw-rw-r-- 1 labex labex 0 May 3 08:45 file1_copy.txt
-rw-rw-r-- 1 labex labex 13 May 3 08:44 file2.txt
drwxrwxr-x 2 labex labex 23 May 3 08:45 new_testdir
-rw-rw-r-- 1 labex labex 0 May 3 08:44 original_file1.txt
drwxrwxr-x 2 labex labex 23 May 3 08:45 testdir
Supprimer un seul fichier :
rm original_file1.txtLa commande
rm(abréviation de « remove ») supprime les fichiers. Vérifions :lsoriginal_file1.txtdevrait avoir disparu.Supprimer de manière interactive (plus sûr) :
Essayons de supprimer
file2.txt, mais cette fois en utilisant l'option interactive-i:rm -i file2.txtL'option
-ivous demande une confirmation avant de supprimer chaque fichier. Tapezy(pour yes/oui) et appuyez sur Entrée pour confirmer. Si vous tapeznou n'importe quoi d'autre, le fichier ne sera pas supprimé.lsSi vous avez confirmé,
file2.txtne sera plus là.Supprimer un répertoire vide :
Vous souvenez-vous de
new_testdircréé en renommanttestdir_copy? Vérifions s'il est vide :ls new_testdirS'il est vide (aucun fichier affiché), nous pouvons le supprimer avec
rmdir:rmdir new_testdirrmdir(remove directory) ne fonctionne que sur les répertoires vides.lsnew_testdira été supprimé.Tenter de supprimer un répertoire non vide :
Maintenant, essayons
rmdirsurtestdir, qui contient encorefile2.txt(copié à l'étape 4) :ls testdir rmdir testdirVous verrez probablement un message d'erreur du type
rmdir: failed to remove 'testdir': Directory not empty. C'est normal carrmdirne peut pas supprimer des dossiers contenant des fichiers ou d'autres dossiers.Supprimer un répertoire et son contenu (récursivement) :
Pour supprimer un répertoire qui n'est pas vide, nous devons utiliser
rmavec l'option-r(récursive) :rm -r testdirCette commande supprime le répertoire
testdirainsi que tout ce qu'il contient. Utilisez cette commande avec une grande prudence.lstestdirdevrait maintenant avoir disparu.Forcer la suppression (à utiliser avec une extrême prudence) :
Parfois, vous voudrez supprimer des fichiers sans confirmation, même s'ils sont protégés en écriture (bien que ce ne soit pas le cas ici). L'option
-f(force) permet cela.Supprimons notre fichier caché :
rm .hiddenfile ls -aMaintenant, combinons
-ret-f. La commanderm -rfest extrêmement puissante et potentiellement dangereuse. Elle supprime les répertoires de manière récursive (-r) et force la suppression sans aucune demande de confirmation (-f).!!! ZONE DE DANGER !!! Soyez ABSOLUMENT CERTAIN de ce que vous supprimez avant de lancer
rm -rf. Une simple faute de frappe pourrait supprimer des fichiers système critiques ou vos données personnelles. Il n'y a pas de fonction « annuler ». Par exemple,rm -rf /pourrait tenter de supprimer l'intégralité de votre système (si vous en avez les droits). Vérifiez toujours deux fois le chemin indiqué.Créons un répertoire et un fichier temporaires pour faire une démonstration (en toute sécurité) :
mkdir temp_dir touch temp_dir/temp_file.txt ls -R temp_dirNote : Vous remarquerez que nous avons utilisé
-R(majuscule) aveclsau lieu de-r(minuscule) comme pourcpetrm. Ce n'est pas juste une question de casse : ce sont des options totalement différentes ! Pourls,-Rsignifie « affichage récursif » (lister les sous-répertoires), alors que-rsignifie « trier dans l'ordre inverse ». Pourcpetrm, l'option récursive est bien-r(minuscule). Consultez toujours le manuel (man commande) pour comprendre les options spécifiques de chaque commande.Maintenant, supprimons-le de force :
rm -rf temp_dirVérifiez la suppression :
lstemp_dira disparu.
Rappelez-vous : dans la ligne de commande Linux, les fichiers supprimés sont généralement perdus pour toujours. Utilisez rm avec discernement !
Résumé
Félicitations ! Vous avez appris les opérations essentielles sur les fichiers sous Linux :
- Naviguer dans le système de fichiers avec
cdetpwd - Créer des fichiers et des répertoires avec
touchetmkdir - Lister le contenu avec
lset ses options - Copier des fichiers et des répertoires avec
cp - Déplacer et renommer avec
mv - Supprimer des fichiers et des répertoires avec
rmetrmdir
Ces commandes constituent le socle de la gestion de fichiers sous Linux. Avec de la pratique, vous deviendrez expert dans la gestion de vos fichiers et dossiers depuis le terminal.
N'oubliez pas d'utiliser ces commandes avec précaution, en particulier rm, car elle supprime définitivement les éléments sans possibilité de récupération simple.
Pour poursuivre votre apprentissage de Linux, n'hésitez pas à explorer les pages de manuel (par exemple, man ls) pour en savoir plus sur chaque commande et ses options. Bonne exploration !



