Commande Linux ls : Lister le contenu

LinuxBeginner
Pratiquer maintenant

Introduction

Bienvenue dans le monde passionnant de la gestion de fichiers sous Linux ! Dans ce tutoriel, nous allons entreprendre un voyage pour maîtriser la commande ls - votre fidèle compagnon pour naviguer dans le système de fichiers. Que vous soyez un administrateur système en herbe ou un nouveau venu curieux, comprendre ls est crucial pour vos aventures sous Linux.

Imaginez que vous êtes un détective enquêtant sur un dossier mystérieux. La commande ls est votre loupe, révélant des indices cachés et dévoilant les secrets de votre système de fichiers. Commençons notre enquête !

Entrer dans le système de fichiers

Ouvrez un terminal et commençons notre enquête !

Cliquez sur l'icône du terminal Xfce sur le bureau pour ouvrir une nouvelle fenêtre de terminal.

Icône du terminal Xfce sur le bureau

Maintenant, jetons un premier coup d'œil autour de nous en utilisant la commande ls de base.

Entrée :

ls

Sortie :

data_file.txt test test_file.txt

Exemple de sortie de la commande ls

Les étapes suivantes n'incluent plus de captures d'écran des invites de commande et des résultats. Veuillez saisir la commande dans le terminal pour voir la sortie.

Félicitations ! Vous venez de lister le contenu du répertoire. Ce sont les "indices" visibles dans notre pièce mystérieuse. Comprenons ce que nous voyons :

  • data_file.txt et test_file.txt sont des fichiers. Sous Linux, les extensions de fichiers (comme .txt) sont souvent utilisées pour indiquer le type de fichier, mais elles ne sont pas obligatoires.
  • test est probablement un répertoire (dossier). Remarquez qu'il n'a pas d'extension de fichier.

Ne vous inquiétez pas si vous voyez des noms de fichiers différents - le contenu de votre répertoire peut varier. L'important est que vous puissiez maintenant voir ce qui se trouve dans votre répertoire actuel !

Dévoiler les secrets cachés

Maintenant que nous avons vu les indices évidents, cherchons les indices cachés. Dans le monde Linux, les fichiers et répertoires cachés commencent par un point (.). Il s'agit souvent de fichiers ou de répertoires de configuration qui ne sont pas destinés à encombrer votre vue habituelle.

Entrée :

ls -a

Sortie :

. .. data_file.txt test test_file.txt

L'option -a affiche tous les fichiers, y compris les fichiers cachés. Analysons ce que nous voyons :

  • . représente le répertoire actuel. C'est un raccourci que vous pouvez utiliser dans les commandes.
  • .. représente le répertoire parent (le répertoire situé un niveau au-dessus). C'est utile pour la navigation.
  • Les autres fichiers que nous avons vus précédemment sont toujours listés.

Vous vous demandez peut-être : "Pourquoi ne vois-je aucun fichier réellement caché ?" Dans ce cas, notre répertoire ne contient aucun fichier caché autre que . et ... Dans de nombreux répertoires, surtout dans votre dossier personnel, vous verrez souvent des fichiers comme .bashrc ou .config.

Si vous venez de l'univers Windows, cela peut sembler étrange. Sous Windows, les fichiers cachés sont un attribut, alors que sous Linux, cela est déterminé par le nom du fichier. Tout fichier commençant par un point est considéré comme caché.

Recueillir des informations détaillées

Un bon détective a besoin d'informations détaillées. Utilisons l'option -l pour obtenir un format de liste longue. Cela nous donnera beaucoup plus d'informations sur chaque fichier et répertoire.

Entrée :

ls -l

Sortie :

total 8
-rw-rw-r-- 1 labex labex 12 Aug  7 11:23 data_file.txt
drwxrwxr-x 2 labex labex  6 Aug  7 11:23 test
-rw-rw-r-- 1 labex labex 27 Aug  7 11:23 test_file.txt

Wow, c'est beaucoup d'informations ! Analysons cela point par point :

  1. Permissions de fichier : La première colonne (par exemple, -rw-rw-r--) indique les permissions du fichier.

    • Le premier caractère indique le type de fichier (- pour un fichier ordinaire, d pour un répertoire).
    • Les trois caractères suivants indiquent les permissions du propriétaire.
    • Les trois suivants indiquent les permissions du groupe.
    • Les trois derniers indiquent les permissions pour les autres.
    • r signifie lecture (read), w signifie écriture (write), et x signifie exécution (execute).
  2. Nombre de liens : Le nombre juste après les permissions (1 pour les fichiers, 2 pour le répertoire dans cet exemple).

  3. Nom du propriétaire : Le nom d'utilisateur du propriétaire du fichier (labex dans ce cas).

  4. Nom du groupe : Le groupe qui a accès au fichier (également labex ici).

  5. Taille du fichier : Taille en octets (12 pour data_file.txt, 6 pour le répertoire test, et 27 pour test_file.txt).

  6. Date et heure de dernière modification : Quand le fichier a été modifié pour la dernière fois (Aug 7 11:23 pour tous les fichiers ici).

  7. Nom du fichier ou du répertoire : Le nom du fichier ou du répertoire.

Remarquez comment test a un d au début de ses permissions ? Cela signifie que c'est un répertoire ! De plus, sa taille est de 6 octets, ce qui est typique pour un répertoire vide ou presque vide dans certains systèmes de fichiers.

Cette vue détaillée nous donne beaucoup d'informations sur nos fichiers et répertoires en un coup d'œil. C'est incroyablement utile pour comprendre qui peut accéder aux fichiers, quand ils ont été modifiés pour la dernière fois et quelle est leur taille.

Rendre les tailles de fichiers lisibles par l'humain

Ces tailles de fichiers en octets peuvent être difficiles à comprendre, surtout pour les fichiers plus volumineux. Rendons-les plus conviviales en utilisant l'option -h avec -l.

Entrée :

ls -lh

👆 Conseils LabEx : Cliquez sur "Explain Code" en bas à droite du bloc de code pour discuter avec Labby AI afin d'obtenir des éclaircissements sur le code.

Sortie :

total 8.0K
-rw-rw-r-- 1 labex labex 12 Aug  7 11:23 data_file.txt
drwxrwxr-x 2 labex labex  6 Aug  7 11:23 test
-rw-rw-r-- 1 labex labex 27 Aug  7 11:23 test_file.txt

Maintenant, nous pouvons voir que la taille totale est de 8.0K, ce qui est beaucoup plus facile à comprendre que de la voir en octets !

L'option -h signifie "human-readable" (lisible par l'humain). Elle convertit les tailles de fichiers dans un format plus facile à comprendre pour les humains. Voici comment cela fonctionne :

  • Les fichiers de moins de 1 Ko sont affichés en octets (comme nous le voyons avec nos fichiers ici).
  • Les fichiers entre 1 Ko et 1 Mo sont affichés en Ko (K).
  • Les fichiers entre 1 Mo et 1 Go sont affichés en Mo (M).
  • Les fichiers de plus de 1 Go sont affichés en Go (G).

C'est particulièrement utile lorsque vous traitez de gros fichiers ou lorsque vous essayez de comprendre rapidement l'espace occupé par les fichiers.

Vous remarquerez peut-être que même si nous avons ajouté l'option -h, nous avons toujours inclus l'option -l. C'est parce que -h modifie la sortie du format de liste longue. Si nous utilisions simplement ls -h, nous ne verrions pas du tout les tailles de fichiers !

Combiner nos outils de détective

Maintenant que nous avons appris plusieurs options, combinons-les pour obtenir une image complète de notre pièce mystérieuse, incluant les indices cachés et des informations détaillées dans un format lisible par l'humain.

Entrée :

ls -alh

Sortie :

total 12K
drwxr-xr-x 1 labex labex   60 Aug  7 11:23 .
drwxr-x--- 1 labex labex 4.0K Aug  7 11:24 ..
-rw-rw-r-- 1 labex labex   12 Aug  7 11:23 data_file.txt
drwxrwxr-x 2 labex labex    6 Aug  7 11:23 test
-rw-rw-r-- 1 labex labex   27 Aug  7 11:23 test_file.txt

Cette commande combine tout ce que nous avons appris :

  • -a affiche tous les fichiers, y compris les fichiers cachés
  • -l fournit le format de liste longue avec des informations détaillées
  • -h rend les tailles de fichiers lisibles par l'humain

Analysons ce que nous voyons :

  1. L'utilisation totale du disque par le répertoire (12K).
  2. Le répertoire actuel (.) et son parent (..), que nous avons vus plus tôt avec ls -a.
  3. Nos fichiers et répertoires, avec toutes les informations détaillées que nous avons vues avec ls -l.
  4. Les tailles de fichiers dans un format lisible par l'humain, grâce à l'option -h.

Vous vous demandez peut-être pourquoi nous voyons un total de 12K alors que l'addition des fichiers visibles nous donne moins que cela. C'est parce que le total inclut la taille des entrées de répertoire elles-mêmes, qui occupent de l'espace sur le disque.

Notez également que l'ordre des options n'a pas d'importance. ls -alh, ls -hal, ls -lha produiraient tous la même sortie. C'est vrai pour la plupart des commandes Linux, ce qui les rend très flexibles !

Trier nos indices

Parfois, l'ordre de nos indices compte. Explorons comment nous pouvons trier nos fichiers de différentes manières.

Tout d'abord, trions nos fichiers par date de modification, avec les plus récents en premier :

Entrée :

ls -lt

Cette commande liste les fichiers au format long (-l), triés par date de modification (-t), avec les fichiers modifiés le plus récemment en premier.

Si vous ne voyez aucune différence dans l'ordre, c'est parce que tous les fichiers de ce répertoire ont probablement été créés ou modifiés en même temps. Dans un scénario réel avec des fichiers modifiés à des moments différents, vous verriez les fichiers modifiés le plus récemment en haut.

Maintenant, inversons l'ordre pour voir les fichiers les plus anciens en premier :

Entrée :

ls -ltr

L'option r inverse l'ordre de tri. Encore une fois, si tous les fichiers ont la même date de modification, vous ne verrez pas de différence.

Voici d'autres options de tri utiles :

  • -S : Trier par taille de fichier, du plus grand au plus petit
  • -X : Trier par ordre alphabétique selon l'extension du fichier
  • -v : Trier par version (utile pour les fichiers numérotés)

Vous pouvez les combiner avec nos options précédentes. Par exemple, ls -lhSr vous donnerait une liste longue avec des tailles lisibles par l'humain, triée par taille avec les plus petits fichiers en premier.

N'oubliez pas que sous Linux, vous pouvez souvent combiner des options pour créer des commandes puissantes et personnalisées !

Jeter un coup d'œil à l'intérieur des répertoires

Jusqu'à présent, nous avons examiné le contenu de notre répertoire actuel. Mais que faire si nous voulons enquêter sur le contenu d'un sous-répertoire sans y entrer réellement ? Nous pouvons utiliser la commande ls avec un nom de répertoire comme argument.

Entrée :

ls -l test

Cette commande listera le contenu du répertoire test pendant que nous restons à notre emplacement actuel. Si le répertoire test est vide, vous verrez un message comme celui-ci :

total 0

Cela signifie que le répertoire existe mais ne contient aucun fichier.

S'il y a des fichiers dans le répertoire test, vous les verrez listés exactement comme nous l'avons vu dans notre répertoire actuel.

Cette capacité à "jeter un coup d'œil" dans les répertoires est très utile lorsque vous explorez un système de fichiers ou que vous recherchez des fichiers spécifiques. Vous pouvez même utiliser des caractères génériques (wildcards) pour regarder dans plusieurs répertoires à la fois. Par exemple :

ls -l */

Cela vous montrerait le contenu de tous les sous-répertoires immédiats à votre emplacement actuel.

N'oubliez pas que si vous n'avez pas la permission de lire un répertoire, ls vous indiquera que l'accès est refusé. Cela fait partie du modèle de sécurité robuste de Linux, garantissant que les utilisateurs ne peuvent accéder qu'aux fichiers et répertoires auxquels ils sont autorisés.

Une astuce amusante - La vache qui parle et comprendre les options de couleur

Maintenant que vous maîtrisez les bases de ls, amusons-nous un peu et explorons un peu plus ! Linux n'est pas seulement une affaire de travail sérieux – il peut aussi être ludique. Nous allons utiliser un programme amusant appelé cowsay pour afficher le contenu de notre répertoire de manière amusante, puis nous apprendrons les options de couleur dans ls.

Tout d'abord, essayons l'astuce cowsay :

Entrée :

ls | cowsay

Vous devriez voir quelque chose comme ceci :

 _________________________________________
/ data_file.txt test test_file.txt        \
\                                         /
 -----------------------------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

N'est-ce pas amusant ? Nous venons de faire dire à une vache le contenu de notre répertoire !

Vous vous posez peut-être des questions sur le symbole | entre ls et cowsay. C'est ce qu'on appelle un "pipe" (tube), et c'est une fonctionnalité puissante sous Linux qui connecte les commandes entre elles. Ne vous inquiétez pas si vous ne comprenez pas comment cela fonctionne pour le moment – c'est tout à fait normal ! Nous en apprendrons plus sur les pipes dans les prochaines leçons. Pour l'instant, profitez simplement de la vache qui parle !

Maintenant, explorons un peu plus ls. Saviez-vous que ls peut afficher la sortie en différentes couleurs ? Par défaut, de nombreux systèmes Linux sont configurés pour afficher les couleurs automatiquement. Mais nous pouvons contrôler ce comportement. Essayons d'utiliser ls avec une option spéciale pour désactiver les couleurs :

Entrée :

ls --color=never

Vous devriez maintenant voir le contenu du répertoire sans aucune couleur. C'est la sortie simple et non colorée de ls.

L'option --color dans ls peut prendre trois valeurs :

  • never : Ne jamais utiliser de couleurs (ce que nous venons d'essayer)
  • always : Toujours utiliser les couleurs, même lors de l'envoi de la sortie vers un fichier ou une autre commande
  • auto : Utiliser les couleurs lors de l'affichage direct dans le terminal, mais pas lors de l'envoi de la sortie ailleurs

Utiliser ls --color=never peut être utile dans des scripts ou lorsque vous voulez garantir une sortie cohérente, quels que soient les paramètres de votre terminal.

Ces petites explorations vous montrent que les commandes Linux ont souvent de nombreuses options qui peuvent modifier leur comportement. Au fur et à mesure que vous poursuivrez votre voyage sous Linux, vous découvrirez bien d'autres fonctionnalités utiles de ls et d'autres commandes !

Résumé

Félicitations, détective ! Vous avez maîtrisé les bases de la commande ls. Récapitulons ce que nous avons appris :

  1. Utilisation de base : ls - Liste les fichiers et répertoires dans le répertoire actuel.
  2. Afficher les fichiers cachés : ls -a - Affiche tous les fichiers, y compris les fichiers cachés.
  3. Liste détaillée : ls -l - Affiche des informations détaillées sur les fichiers et répertoires.
  4. Tailles de fichiers lisibles par l'humain : ls -h - Affiche les tailles de fichiers dans un format facile à comprendre pour les humains.
  5. Combiner les options : ls -alh - Affiche tous les fichiers avec des informations détaillées et des tailles lisibles par l'humain.
  6. Trier les fichiers : ls -lt, ls -ltr - Trie les fichiers par date de modification, du plus récent au plus ancien ou inversement.
  7. Lister le contenu d'autres répertoires : ls [répertoire] - Jette un coup d'œil dans d'autres répertoires sans changer votre emplacement actuel.

Il existe bien d'autres options pour ls à explorer. En voici quelques autres qui pourraient vous être utiles :

  • -R : Liste les sous-répertoires de manière récursive (affiche le contenu de tous les sous-répertoires)
  • -S : Trier par taille de fichier (du plus grand au plus petit)
  • -X : Trier par ordre alphabétique selon l'extension de l'entrée
  • -1 : Lister un fichier par ligne (utile pour les scripts)

N'oubliez pas que vous pouvez toujours consulter la page de manuel de ls en tapant man ls dans votre terminal pour obtenir une liste complète des options et des explications détaillées. Ne soyez pas intimidé par les pages de manuel - ce sont des mines d'informations une fois que vous êtes habitué à les lire !

Avec ces outils à votre disposition, vous êtes bien équipé pour explorer et gérer des fichiers dans n'importe quel système Linux. La commande ls n'est que le début de votre voyage sous Linux, mais c'est un outil essentiel que vous utiliserez quotidiennement à mesure que vous deviendrez plus compétent avec le système d'exploitation.

En continuant à explorer Linux, gardez ces points clés à l'esprit :

  1. Les commandes Linux sont souvent courtes et cryptiques au début, mais elles sont conçues pour être puissantes et efficaces une fois que vous les avez apprises.
  2. La plupart des commandes ont de nombreuses options que vous pouvez combiner de différentes manières. N'ayez pas peur d'expérimenter !
  3. Le terminal peut sembler intimidant au début, mais c'est un outil incroyablement puissant qui vous donne un contrôle précis sur votre système.
  4. Linux est sensible à la casse. File.txt, file.txt, et FILE.txt sont tous des fichiers différents sous Linux.
  5. Les concepts que vous avez appris avec ls (comme les options et les arguments) s'appliquent également à de nombreuses autres commandes Linux.

C'est en forgeant qu'on devient forgeron ! Essayez d'utiliser ls avec différentes combinaisons d'options dans divers répertoires. Plus vous l'utiliserez, plus cela deviendra naturel.

N'oubliez pas que chaque expert a été un débutant. Avec de la patience et de la pratique, vous naviguerez bientôt dans le système de fichiers Linux comme un pro !

Bonne exploration, et n'hésitez pas à vous référer à ce guide chaque fois que vous avez besoin d'un rappel sur la commande ls. Votre voyage dans le monde de Linux ne fait que commencer !