--- page corrigée --- //[[rcjcgg@gmail.com|oh!rocks]] 2009/05/09 18:49// =====ls : lister le contenu d'un répertoire===== Un signe $ précède les commandes qui ne nécessitent pas de droits administrateur ; un signe # précède celles qui nécessitent des droits administrateur (ces signes ne font PAS partie des commandes). Les lignes qui ne commencent pas par un signe $ ou # correspondent au résultat de la commande précédente.\\ Les touches utilisées sont indiquées entre crochets, exemple **[ctrl]** pour la touche "contrôle" Pour savoir ce qui se trouve dans un répertoire, vous pouvez en faire un listing avec la commande **ls**:\\ $ ls /home/tux/recettes-tartes chocolat pommes tourterelle coco rhubarbe mirabelles salées Le listing est en général coloré par type de fichier (répertoires, fichiers texte..., l'option "%%--color%%" est activée par défaut) et ordonné alphabétiquement. Pour lister par taille on peut utiliser l'option "**-S**", et pour lister par date de modification, l'option "**-t**". Si vous voulez obtenir un listing ordonné sur une seule colonne, avec de nombreuses informations additionelles (droits, taille, liens symboliques...), utilisez l'option "**-l**" :\\ $ ls -l / total 96 drwxr-xr-x 2 root root 4096 avr 14 10:21 bin drwxr-xr-x 3 root root 4096 avr 16 01:22 boot lrwxrwxrwx 1 root root 11 jun 1 2008 cdrom -> media/cdrom drwxr-xr-x 15 root root 14720 avr 18 08:48 dev drwxr-xr-x 3 root root 4096 jun 1 2008 emul drwxr-xr-x 140 root root 12288 avr 18 09:05 etc drwxr-xr-x 5 root root 4096 avr 10 15:10 home drwxr-xr-x 2 root root 4096 jun 1 2008 initrd lrwxrwxrwx 1 root root 34 avr 3 19:04 initrd.img -> boot/initrd.img-2.6.29.1-vanilla64 lrwxrwxrwx 1 root root 34 mar 24 08:05 initrd.img.old -> boot/initrd.img-2.6.28.9-vanilla64 drwxr-xr-x 14 root root 4096 avr 17 11:02 lib lrwxrwxrwx 1 root root 20 jun 1 2008 lib32 -> /emul/ia32-linux/lib lrwxrwxrwx 1 root root 4 jun 1 2008 lib64 -> /lib drwx------ 2 root root 16384 jun 1 2008 lost+found drwxr-xr-x 7 root root 4096 avr 18 08:41 media drwxr-xr-x 5 root root 4096 mar 24 15:14 mnt drwxr-xr-x 3 root root 4096 avr 7 11:49 opt dr-xr-xr-x 145 root root 0 avr 18 08:41 proc drwxr-xr-x 22 root root 4096 avr 17 10:17 root drwxr-xr-x 2 root root 12288 avr 17 11:02 sbin drwxr-xr-x 7 root root 0 avr 18 08:41 selinux drwxr-xr-x 3 root root 4096 jun 1 2008 srv drwxr-xr-x 12 root root 0 avr 18 08:41 sys drwxrwxrwt 9 root root 4096 avr 18 10:38 tmp drwxr-xr-x 11 root root 4096 déc 15 22:37 usr drwxr-xr-x 14 root root 4096 fév 17 20:57 var lrwxrwxrwx 1 root root 31 avr 3 19:04 vmlinuz -> boot/vmlinuz-2.6.29.1-vanilla64 lrwxrwxrwx 1 root root 31 mar 24 08:05 vmlinuz.old -> boot/vmlinuz-2.6.28.9-vanilla64 Les liens sont indiqués par la lettre "**l**" en début de ligne et leur cible par "**%%->%%**".\\ Un "**d**" en début de ligne indique un répertoire.\\ Si vous voulez __inclure les fichiers cachés__ (ceux dont le nom commence par un "**.**" (point), comme ".bashrc"), utilisez l'option "**-a**".\\ Vous pouvez cumuler les options. Par exemple, pour obtenir un listing ordonné (-l) incluant les fichiers cachés (-a) et classé par taille (-S) :\\ $ ls -laS ======= Pour aller plus loin ====== ==== Listage des fichiers en console ==== En console, on obtient la liste des fichiers et répertoires d'un répertoire en faisant simplement: ls Mais si on veut en plus les informations sur les droits de ces fichiers, il faut faire (le "l" est un "L" minuscule): ls -l Par exemple, listage dans la console du répertoire "/etc/cups": {{:commande:droitslinux:listageconsole.jpg|}} Signification des différentes colonnes: * Colonne 1: ce sont les droits. Le 1er caractère donne le type de fichier: * "-" pour un fichier normal (ex: /etc/cups/command.types) * "d" pour un répertoire (ex: /etc/cups) * "c" pour un périphérique "caractère" (ex: un modem comme /dev/rtc) * "b" pour un périphérique "bloc" (ex: un disque comme /dev/hda ou /dev/sda) * "l" pour un lien symbolique (ex: /boot/vmlinuz) * "s" pour une socket locale (ex:/dev/log) * "p" pour un tube nommé (ex: /dev/bootplash ou /dev/xconsole) * Colonne 2: (sans intérêt courant: il s'agit d'un comptage de liaisons) * Colonne 3: propriétaire * Colonne 4: groupe * Colonne 5: taille en octets * Colonne 6, 7 et 8: date et heure de la dernière modification * Colonne 9: nom du fichier Par defaut, le listage présente les fichiers triés par ordre alphabétique, mais vous pouvez changer cet ordre en ajoutant des options (voir page man de ls). Par contre, les répertoires et les fichiers sont mélangés, contrairement à la pratique des navigateurs graphiques. S'il y a plus de fichiers qu'il n'y a de ligne dans la console, vous ne pouvez jamais voir les 1ers qui défilent trop vite: pour voir quand même tous les fichiers, vous pouvez faire (exemple avec le répertoire /bin): ls -l /bin | more On peut aussi demander le listage en utilisant des jokers (wildmark en anglais) avec "?" pour remplacer un seul caractère, et "*" pour remplacer plusieurs caractères (ou aucun). Par exemple pour lister le contenu des 2 répertoires /bin et /boot: ls -l /b* Et pour lister tous les fichiers et répertoires de /bin qui contiennent "ou" en seconde position (ex: "mount", "mountpoint" et "touch"): ls -l /bin/?ou* Vous pouvez aussi demander le listage d'un répertoire et de ses sous-répertoires (listage récursif) en ajoutant l'option "-R" (que vous combinez avec le "-l"). Par exemple avec le listage du répertoire /srv: ls -lR /srv Et si vous voulez pouvoir regarder ce listage "à tête reposée" (comme disait Louis XVI :-) ), mettez-le dans un fichier (ce fichier sera créé: mettez-le donc dans un répertoire où vous avez le droit de le faire, par exemple, dans votre home ou dans /tmp): ls -lR /srv > /home/votrelogin/toto.txt NB: **//__méfiez-vous comme de peste de l'option "-R" avec des jokers__//**. Cette option "-R" permet de traiter toute une arborescence, mais peut avoir des effets inattendus. Par exemple, vous êtes dans un répertoire dont vous voulez lister les fichiers cachés. Intuitivement, vous faites: "ls -R .*". Le problème, c'est que listerez aussi le répertoire situé au dessus, parce que ".." fait partie de ".*". Imaginez alors les dégâts que vous auriez fait avec la commande d'effacement "rm"!!! ==== Listage des fichiers avec konqueror sous KDE ==== Listage dans konqueror du même répertoire /etc/cups: NB: Pour obtenir ce résultat détaillé avec konqueror, il faut intervenir dans ses préférences: ce n'est pas le mode d'affichage par défaut. Dans tous les cas, pour des travaux d'administration, demandez l'affichage par liste, et non par icône, et demander en plus l'affichage des droits des fichiers. {{:commande:droitslinux:listagekonqueror.jpg?600}} "cliquez sur l'image pour agrandir" ==== Listage des fichiers avec nautilus sous gnome ==== Listage dans nautilus du même répertoire /etc/cups: NB: Pour obtenir ce résultat avec nautilus, il faut intervenir dans ses préférences: ce n'est pas le mode d'affichage par défaut.Dans tous les cas, pour des travaux d'administration, demandez l'affichage par liste, et non par icône, et demander en plus l'affichage des droits des fichiers. {{:commande:droitslinux:listagenautilus.jpg?600}} "cliquez sur l'image pour agrandir" Voilà pour les bases. Pour plus d'options, consultez le manuel : "man ls".