Bienvenue dans le laboratoire sur les opérations de base sur les fichiers sous Linux! Sous Linux, presque tout est considéré comme un fichier, ce qui rend les opérations sur les fichiers fondamentales pour utiliser le système. Ce laboratoire vous guidera à travers les commandes les plus courantes pour gérer les fichiers et les répertoires, vous aidant à devenir plus compétent dans la navigation et l'organisation de votre système Linux.
Prérequis
Compréhension de base de ce qu'est une interface en ligne de commande
Familiarité avec le concept de fichiers et de répertoires (dossiers)
Objectifs
À la fin de ce laboratoire, vous serez en mesure de :
Naviguer dans le système de fichiers Linux en toute confiance
Créer, lister et manipuler des fichiers et des répertoires
Comprendre et utiliser les commandes de base pour les opérations sur les fichiers
Skills Graph
%%%%{init: {'theme':'neutral'}}%%%%
flowchart RL
linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"])
linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"])
linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"])
linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display")
linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing")
linux/BasicFileOperationsGroup -.-> linux/touch("File Creating/Updating")
linux/BasicFileOperationsGroup -.-> linux/cp("File Copying")
linux/BasicFileOperationsGroup -.-> linux/mv("File Moving/Renaming")
linux/BasicFileOperationsGroup -.-> linux/rm("File Removing")
linux/FileandDirectoryManagementGroup -.-> linux/cd("Directory Changing")
linux/FileandDirectoryManagementGroup -.-> linux/pwd("Directory Displaying")
linux/FileandDirectoryManagementGroup -.-> linux/mkdir("Directory Creating")
subgraph Lab Skills
linux/echo -.-> lab-270248{{"Opérations de base sur les fichiers"}}
linux/ls -.-> lab-270248{{"Opérations de base sur les fichiers"}}
linux/touch -.-> lab-270248{{"Opérations de base sur les fichiers"}}
linux/cp -.-> lab-270248{{"Opérations de base sur les fichiers"}}
linux/mv -.-> lab-270248{{"Opérations de base sur les fichiers"}}
linux/rm -.-> lab-270248{{"Opérations de base sur les fichiers"}}
linux/cd -.-> lab-270248{{"Opérations de base sur les fichiers"}}
linux/pwd -.-> lab-270248{{"Opérations de base sur les fichiers"}}
linux/mkdir -.-> lab-270248{{"Opérations de base sur les fichiers"}}
end
Comprendre votre environnement de travail
Sous Linux, chaque utilisateur dispose généralement d'un "répertoire personnel" (home directory), représenté par ~. Cependant, dans cet environnement de laboratoire, 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 dans l'environnement de laboratoire.
Commençons par comprendre notre emplacement actuel :
pwd
pwd signifie "print working directory" (afficher le répertoire de travail). Il affiche votre emplacement actuel dans le système de fichiers. Cette commande est essentielle pour vous repérer dans la structure de fichiers Linux. Vous devriez voir /home/labex/project comme résultat.
Maintenant, explorons la relation entre le répertoire actuel et le répertoire personnel :
echo ~
Cette commande affichera le chemin vers votre répertoire personnel, qui devrait être /home/labex.
Pour voir le contenu de votre répertoire actuel, utilisez :
ls
Cela répertoriera les fichiers et les répertoires de votre répertoire de travail actuel (/home/labex/project).
Vérifions également le contenu de votre répertoire personnel :
ls ~
Cette commande répertorie le contenu de votre répertoire personnel, qui peut être différent de votre répertoire de travail actuel.
Comprendre la distinction entre votre répertoire de travail actuel et votre répertoire personnel est important pour naviguer efficacement dans le système de fichiers Linux.
Navigation dans le système de fichiers
Linux utilise ce que l'on appelle un "système de fichiers hiérarchique". Imaginez-le comme un grand arbre avec des branches. Le tronc principal est appelé le "répertoire racine" (root directory), représenté par une seule barre oblique /. Tous les autres répertoires et fichiers se ramifient à partir de cette racine.
Explorons comment nous déplacer dans cette structure en forme d'arbre :
Vérifiez votre emplacement actuel :
pwd
Cela devrait afficher /home/labex/project. Si ce n'est pas le cas, vous pourriez être dans un autre répertoire. Utilisez cd /home/labex/project pour revenir au point de départ.
Affichez le contenu de votre répertoire actuel :
ls
Cela répertorie tous les fichiers et dossiers à votre emplacement actuel. /home/labex/project est vide, vous ne verrez donc rien.
Remontez d'un niveau dans le répertoire parent :
cd..
Le .. signifie "le répertoire au-dessus". Après cette commande, exécutez pwd à nouveau. Vous devriez maintenant être dans /home/labex.
Revenez à votre répertoire de projet :
cd project
Cela vous ramène à /home/labex/project.
Accédez à votre répertoire personnel :
cd ~
Le ~ est un raccourci pour votre répertoire personnel. Exécutez pwd pour confirmer que vous êtes dans /home/labex.
Revenez au répertoire de projet en utilisant un chemin absolu :
cd /home/labex/project
Cela s'appelle un "chemin absolu" car il commence à partir de la racine (/) et indique l'emplacement complet.
Création de fichiers et liste du contenu des répertoires
Maintenant que nous savons nous déplacer dans le système de fichiers, créons quelques fichiers et explorons comment lister le contenu des répertoires.
Tout 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 l'horodatage du fichier sans modifier son contenu. C'est un moyen simple de créer de nouveaux fichiers vides.
echo "Hello, Linux" > file2.txt
Cette commande effectue deux actions :
echo est une commande qui affiche du texte.
Le symbole > redirige la sortie de echo dans un fichier nommé file2.txt. Si le fichier n'existe pas, il est créé. S'il existe déjà, son contenu est remplacé.
echo "Hidden file" > .hiddenfile
Cela crée un fichier caché. Sous Linux, tout nom de fichier ou de répertoire commençant par un point (.) est considéré comme caché.
Maintenant, créons un répertoire :
mkdir testdir
La commande mkdir (abréviation de "make directory", créer un répertoire) crée un nouveau répertoire nommé testdir.
Liste de base :
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 (ceci est un L minuscule, pas le chiffre 1) fournit une liste au format "long". Vous verrez des détails supplémentaires tels que les autorisations de fichier, 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
Cela combine le format long (-l) avec l'affichage de tous les fichiers (-a).
Lister le contenu d'un répertoire spécifique :
ls -l testdir
Cela liste le contenu du répertoire testdir (qui devrait être vide à ce stade).
Copie de fichiers et de répertoires
Maintenant que nous avons des fichiers avec lesquels travailler, apprenons à les copier :
Copier un fichier :
cp file1.txt file1_copy.txt
Cela 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 dans un autre répertoire :
cp file2.txt testdir/
Cela copie file2.txt dans le répertoire testdir.
Copier un répertoire :
cp -r testdir testdir_copy
L'option -r signifie "récursif". Elle est nécessaire lors de la copie de répertoires pour s'assurer que tout le contenu est copié.
Vérifions nos copies :
ls
ls testdir
ls testdir_copy
Déplacement et renommage de fichiers et de répertoires
La commande mv est utilisée à la fois pour déplacer et renommer des éléments sous Linux :
Renommer un fichier :
mv file1.txt newname.txt
Cela renomme file1.txt en newname.txt.
Déplacer un fichier dans un répertoire :
mv newname.txt testdir/
Cela déplace newname.txt dans le répertoire testdir.
Renommer un répertoire :
mv testdir_copy new_testdir
Cela renomme testdir_copy en new_testdir.
Déplacer et renommer en une seule commande :
mv testdir/newname.txt./original_file1.txt
Cela déplace newname.txt hors du répertoire testdir et le renomme en original_file1.txt dans le répertoire actuel.
Vérifions nos modifications :
ls
ls testdir
Suppression de fichiers et de répertoires
La suppression de fichiers et de répertoires est une opération puissante mais potentiellement dangereuse. Vérifiez toujours deux fois avant d'utiliser ces commandes, surtout lorsque vous utilisez des options qui contournent les protections :
Supprimer un fichier :
rm file1_copy.txt
Cela supprime définitivement file1_copy.txt.
Supprimer un répertoire vide :
rmdir new_testdir
rmdir ne fonctionne que sur les répertoires vides, et vous obtiendrez une erreur si le répertoire n'est pas vide.
Supprimer un répertoire et son contenu :
rm -r testdir
L'option -r est nécessaire pour supprimer les répertoires et leur contenu de manière récursive.
Supprimer des fichiers de manière interactive :
rm -i file2.txt
L'option -i demande confirmation avant chaque suppression. Tapez 'y' et appuyez sur Entrée pour confirmer la suppression.
Forcer la suppression sans demande de confirmation :
touch remaining_files
ls
rm -rf remaining_files
La combinaison -rf est très puissante et potentiellement dangereuse. Elle signifie :
-r : récursif (pour les répertoires)
-f : forcer (ignorer les fichiers inexistants, ne jamais demander de confirmation)
ATTENTION : rm -rf supprimera les fichiers et les répertoires sans demander de confirmation. Cela peut être extrêmement destructeur si utilisé incorrectement. Vérifiez toujours votre commande avant de l'utiliser, surtout lorsqu'elle est utilisée avec des caractères génériques ou en tant que superutilisateur.
Vérifions nos suppressions :
ls
N'oubliez pas : sous Linux, il n'y a généralement pas de "Corbeille" pour la ligne de commande. Lorsque vous supprimez quelque chose avec rm, cela est généralement définitif.
Résumé
Félicitations! Vous avez appris les opérations de base sur les fichiers sous Linux :
Navigation dans le système de fichiers avec cd et pwd
Création de fichiers et de répertoires avec touch et mkdir
Liste du contenu avec ls et ses options
Copie de fichiers et de répertoires avec cp
Déplacement et renommage avec mv
Suppression de fichiers et de répertoires avec rm et rmdir
Ces commandes constituent la base de la gestion des fichiers sous Linux. Avec de la pratique, vous deviendrez compétent dans la gestion de vos fichiers et répertoires depuis la ligne de commande.
N'oubliez pas d'utiliser ces commandes avec précaution, surtout rm, car elle supprime définitivement les fichiers et les répertoires sans possibilité de récupération.
Au fur et à mesure de votre progression dans l'utilisation de Linux, explorez les pages de manuel (par exemple, man ls) pour en savoir plus sur chaque commande et ses options. Bonne exploration!