Affichage du sommaire d'un répertoire

La commande ls permet d'afficher le contenu d'un répertoire.

La commande ls écrit dans la sortie standard le sommaire de chaque répertoire spécifié ou le nom de chaque fichier spécifié, ainsi que toute autre information que vous demandez avec les indicateurs. Si vous n'indiquez pas un fichier ou un répertoire, la commande ls affiche le sommaire du répertoire en cours.

Par défaut, la commande ls affiche toutes les informations dans l'ordre alphabétique par nom de fichier. Si la commande est exécutée par un utilisateur disposant des droits d'accès de superutilisateur, elle utilise l'indicateur -A par défaut, en listant toutes les entrées, à l'exception de point (.) et de point point (..). Pour afficher toutes les entrées des fichiers, y compris celles commençant par un point (.), utiliser la commande ls -a .

Vous pouvez mettre en forme la sortie de l'une des manières suivantes :
  • Lister une entrée par ligne, à l'aide de l'indicateur -l .
  • Lister les entrées dans plusieurs colonnes en spécifiant l'indicateur -C ou -x . L'indicateur -C est la mise en forme par défaut lorsque la sortie est pour une unité tty.
  • Lister les entrées dans une série séparée par des virgules en spécifiant l'indicateur -m .

Pour déterminer le nombre de positions de caractères dans la ligne de sortie, la commande ls utilise la variable d'environnement $COLUMNS. Si cette variable n'est pas définie, la commande lit le fichier terminfo . Si la commande ls ne peut pas déterminer le nombre de positions de caractères par l'une de ces méthodes, elle utilise une valeur par défaut de 80.

Les informations affichées avec les indicateurs -e et -l sont interprétées comme suit :

Le premier caractère de chaque entrée peut être l'un des suivants :

Article Descriptif
d L'entrée est un répertoire.
B L'entrée est un fichier spécial de bloc.
c L'entrée est un fichier spécial de type caractère.
l L'entrée est un lien symbolique.
p L'entrée est un fichier spécial pipe premier entré, premier sorti (FIFO).
s L'entrée est une socket locale.
- L'entrée est un fichier ordinaire.

Les neuf caractères suivants sont divisés en trois ensembles de trois caractères chacun. Les trois premiers caractères affichent le droit du propriétaire du fichier ou du répertoire. Les trois autres caractères affichent le droit des autres utilisateurs du groupe. Les trois derniers caractères affichent le droit de toute autre personne ayant accès au fichier. Les trois caractères de chaque ensemble affichent le droit de lecture, d'écriture et d'exécution du fichier. Le droit d'exécution d'un répertoire vous permet de rechercher un fichier spécifié dans un répertoire.

Les autorisations droits sont indiquées comme suit :

Article Descriptif
R Droit de lecture accordé
t Seul le propriétaire du répertoire ou le propriétaire du fichier peut supprimer ou renommer un fichier dans ce répertoire, même si d'autres personnes ont des droits d'écriture sur le répertoire.
w Droit d'écriture (édition) accordé
x Droit d'exécution (de recherche) accordé
- Le droit correspondant n'est pas accordé.

Les informations affichées avec l'indicateur -e sont les mêmes que pour l'indicateur -l , à l'exception de l'ajout d'un onzième caractère, interprété comme suit :

Article Descriptif
+ Indique qu'un fichier contient des informations de sécurité étendues. Par exemple, le fichier peut avoir des attributs ACL, TCBou TP étendus dans le mode.
- Indique qu'un fichier n'a pas d'informations de sécurité étendues.

Lorsque la taille des fichiers d'un répertoire est listée, la commande ls affiche le comptage total de blocs, y compris les blocs indirects.

Prenons les exemples suivants :
  • Pour lister tous les fichiers du répertoire en cours, entrer la commande suivante :
    ls -a
    Cette liste répertorie tous les fichiers, y compris
    • point (.)
    • point point (..)
    • Autres fichiers dont les noms peuvent ou non commencer par un point (.)
  • Pour afficher des informations détaillées, entrer la commande suivante :
    ls -l chap1 .profile
    Cette option affiche une longue liste contenant des informations détaillées sur chap1 et .profile.
  • Pour afficher des informations détaillées sur un répertoire, entrer la commande suivante :
    ls -d -l . manual manual/chap1
    Une longue liste s'affiche pour les répertoires . et manual, ainsi que pour le fichier manual/chap1. Sans l'indicateur -d , les fichiers des répertoires . et manual seraient répertoriés à la place des informations détaillées sur les répertoires eux-mêmes.