Bash
Liste des fichiers
Recherche…
Syntaxe
- ls [OPTION] ... [FICHIER] ...
Paramètres
Option | La description |
---|---|
-a , --all | Liste toutes les entrées, y compris celles qui commencent par un point |
-A , -A --almost-all | Recenser toutes les entrées à l' exclusion . et .. |
-c | Trier les fichiers par heure de modification |
-d , --directory | Lister les entrées du répertoire |
-h , --human-readable | Afficher les tailles dans un format lisible par l'homme (c.-à-d. K , M ) |
-H | Même que ci-dessus seulement avec des puissances de 1000 au lieu de 1024 |
-l | Afficher le contenu au format de liste longue |
-o | Format longue liste sans information de groupe |
-r , --reverse | Afficher le contenu dans l'ordre inverse |
-s , --size | Taille d'impression de chaque fichier en blocs |
-S | Trier par taille de fichier |
--sort=WORD | Trier le contenu par un mot. (c.-à-d. taille, version, statut) |
-t | Trier par heure de modification |
-u | Trier par dernière heure d'accès |
-v | Trier par version |
-1 | Liste un fichier par ligne |
Liste de fichiers
La commande ls
répertorie le contenu d'un répertoire spécifié, à l' exception des fichiers dotfiles. Si aucun répertoire n'est spécifié, le contenu du répertoire actuel est répertorié par défaut.
Les fichiers répertoriés sont triés par ordre alphabétique, par défaut et alignés dans des colonnes s'ils ne tiennent pas sur une seule ligne.
$ ls
apt configs Documents Fonts Music Programming Templates workspace
bin Desktop eclipse git Pictures Public Videos
Liste des fichiers dans un format de liste longue
L'option -l
la commande ls
imprime le contenu d'un répertoire spécifié dans un format de liste long. Si aucun répertoire n'est spécifié, le contenu du répertoire actuel est répertorié par défaut.
ls -l /etc
Exemple de sortie:
total 1204
drwxr-xr-x 3 root root 4096 Apr 21 03:44 acpi
-rw-r--r-- 1 root root 3028 Apr 21 03:38 adduser.conf
drwxr-xr-x 2 root root 4096 Jun 11 20:42 alternatives
...
La sortie affiche d'abord le total
, qui indique la taille totale en blocs de tous les fichiers du répertoire répertorié. Il affiche ensuite huit colonnes d'informations pour chaque fichier du répertoire répertorié. Voici les détails pour chaque colonne dans la sortie:
Colonne No. | Exemple | La description |
---|---|---|
1.1 | d | Type de fichier (voir tableau ci-dessous) |
1.2 | rwxr-xr-x | Chaîne d'autorisation |
2 | 3 | Nombre de liens durs |
3 | root | Le nom du propriétaire |
4 | root | Groupe de propriétaires |
5 | 4096 | Taille du fichier en octets |
6 | Apr 21 03:44 | Heure de modification |
7 | acpi | Nom de fichier |
Type de fichier
Le type de fichier peut être l'un des caractères suivants.
Personnage | Type de fichier |
---|---|
- | Fichier régulier |
b | Bloquer le fichier spécial |
c | Fichier spécial de personnage |
C | Fichier haute performance ("données contiguës") |
d | Annuaire |
D | Porte (fichier IPC spécial dans Solaris 2.5+ uniquement) |
l | Lien symbolique |
M | Fichier hors ligne ("migré") (Cray DMF) |
n | Fichier spécial réseau (HP-UX) |
p | FIFO (tuyau nommé) |
P | Port (fichier système spécial dans Solaris 10+ uniquement) |
s | Prise |
? | Un autre type de fichier |
Liste des fichiers triés par taille
L'option -S
la commande ls
trie les fichiers par ordre décroissant de taille de fichier.
$ ls -l -S ./Fruits
total 444
-rw-rw-rw- 1 root root 295303 Jul 28 19:19 apples.jpg
-rw-rw-rw- 1 root root 102283 Jul 28 19:19 kiwis.jpg
-rw-rw-rw- 1 root root 50197 Jul 28 19:19 bananas.jpg
Lorsqu'il est utilisé avec l'option -r
, l'ordre de tri est inversé.
$ ls -l -S -r /Fruits
total 444
-rw-rw-rw- 1 root root 50197 Jul 28 19:19 bananas.jpg
-rw-rw-rw- 1 root root 102283 Jul 28 19:19 kiwis.jpg
-rw-rw-rw- 1 root root 295303 Jul 28 19:19 apples.jpg
Liste des fichiers sans utiliser `ls`
Utilisez les fonctions d' extension de nom de fichier du shell Bash et d' extension pour obtenir les noms de fichiers:
# display the files and directories that are in the current directory
printf "%s\n" *
# display only the directories in the current directory
printf "%s\n" */
# display only (some) image files
printf "%s\n" *.{gif,jpg,png}
Pour capturer une liste de fichiers dans une variable à traiter, il est généralement recommandé d'utiliser un tableau bash :
files=( * )
# iterate over them
for file in "${files[@]}"; do
echo "$file"
done
Liste des dix fichiers les plus récemment modifiés
Le tableau suivant répertorie jusqu'à dix des fichiers les plus récemment modifiés dans le répertoire en cours, en utilisant un format de liste long ( -l
) et trié par heure ( -t
).
ls -lt | head
Liste tous les fichiers, y compris les fichiers Dotfiles
Un fichier de points est un fichier dont le nom commence par a .
. Celles-ci sont normalement cachées par ls
et ne sont pas listées, sauf si elles sont demandées.
Par exemple, la sortie suivante de ls
:
$ ls
bin pki
L'option -a
ou --all
listera tous les fichiers, y compris les fichiers dot.
$ ls -a
. .ansible .bash_logout .bashrc .lesshst .puppetlabs .viminfo
.. .bash_history .bash_profile bin pki .ssh
L'option -A
ou --almost-all
répertorie tous les fichiers, y compris les fichiers de points, mais n'indique pas de liste implicite .
et ..
Notez cela .
est le répertoire actuel et ..
est le répertoire parent.
$ ls -A
.ansible .bash_logout .bashrc .lesshst .puppetlabs .viminfo
.bash_history .bash_profile bin pki .ssh
Liste des fichiers dans un format arborescent
La commande d' tree
répertorie le contenu d'un répertoire spécifié dans un format arborescent. Si aucun répertoire n'est spécifié, le contenu du répertoire actuel est répertorié par défaut.
Exemple de sortie:
$ tree /tmp
/tmp
├── 5037
├── adb.log
└── evince-20965
└── image.FPWTJY.png
Utilisez l'option -L
la commande tree
pour limiter la profondeur d'affichage et l'option -d
pour ne lister que les répertoires.
Exemple de sortie:
$ tree -L 1 -d /tmp
/tmp
└── evince-20965