ls
Ces exercices sont des questions de cours : les solutions se trouvent
toutes dans les pages de man des commandes en question. On suppose donc
connues les commandes de less
, qui servent à se déplacer dans les
pages de man... et la commande servant à chercher un mot. Testez les
commandes sur des fichiers et répertoires d'essai pour vous faire la main et
comprendre ce qui se passe.
/usr/local/games/bin
ls /usr/local/games/bin
Vous obtenez une liste des jeux installés.
.flnewsrc.forum
?
ls -al .flnewsrc.forum
L'option -a
fait apparaître les fichiers de configuration, qui
commencent par un point; l'option -l
affiche plusieurs
renseignements, en particulier la taille. En fait, si vous indiquez le nom
complet du fichier cherché, avec le point, l'option -a
est
inutile; c'est le cas ici.
Le .flnewsrc.forum
contient la liste de continua de forum avec
des indications sur les contis auxquels vous êtes abonnés et les messages que
vous avez déjà lus. Il est remis à jour à chaque fois que vous lisez
forum : la date indiquée correspond donc à la dernière fois que vous avec
lancé (ou plus précisément, quitté...) forum.
-R
de
ls
?
Cette option permet d'afficher une liste récursive, c'est-à-dire qui indique
le contenu des répertoires listés, ainsi que de leurs sous-répertoires. Si
vous tapez ls -R
dans votre répertoire personnel, vous aurez une
liste de tout ce que vous avez chez vous.
Pour savoir cela, il faut chercher le mot sort dans le man de
ls
. La première occurence vous dit que par défaut le résultat est
trié par ordre alphabétique, selon la première lettre des fichiers. De façon
plus précise, l'ordre est le suivant : ponctuations, chiffres,
majuscules, minuscules, selon l'ordre défini par la table des caractères
ASCII.
En continuant à chercher, vous trouvez des options intéressantes :
-r
(reverse), qui inverse l'ordre de classement,
-t
(time) qui trie en fonction de la date de dernière
modification.
ls -t
si vous voulez juste modifier le critère de tri, sans plus de renseignements; ou encore
ls -lt
si vous voulez une longue liste.
Mail
? Qu'est-ce que cela signifie ?
La ligne ressemble à ceci :
drwx------ 2 toto litt98 512 Apr 2 19:02 Mail
Le d
indique qu'il s'agit d'un répertoire (directory).
Suivent ensuite neuf caractères, allant par trois; r, w, x
correspondent aux droits que vous avez sur le répertoire (ou le
fichier) : r
(read) pour le droit de lecture,
w
(write) pour le droit d'écriture, x
(execute) pour le droit d'exécution.
Les six tirets qui suivent correspondent aux droits qu'ont le groupe (ici
litt98
) puis le reste des utilisateurs. Ici il y a des tirets, ce
qui signifie qu'ils n'ont aucun droit sur ce répertoire.
Cela veut dire que seul le propriétaire a le droit de lire et écrire dans son
répertoire Mail/
, ainsi que d'y accéder. Les répertoires et les
fichiers de courrier sont protégés contre les indiscrétions.
Un fichier de texte standard a les droits suivants :
-rw-r--r--
Il y a un tiret tout au début, ce qui signifie que c'est un fichier
normal; vous avez le droit d'écrire et de lire (rw-
), votre
groupe et les autres utilisateurs ont le droit de lire le fichier
(r--
). La commande chmod
permet de
changer ces droits, si l'on veut restreindre la lecture, ou rendre un
fichier exécutable.
Remarque : ne cédez pas à la paranoïa... vos camarades ne passent pas leur temps à farfouiller sur les comptes des voisins, donc vous n'avez pas besoin d'interdire à la lecture tout ce que vous avez chez vous.
ls -l
.
-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux
Les dix premiers caractères détaillent les droits du fichier. Le premier caratère identifie le type du fichier : ici, rien n'est spécifié, c'est donc un fichier normal. L'exercice précédent détaille la signification des lettres suivantes. Ce sont les droits normaux d'un fichier standard : tout le monde (propriétaire, groupe et autres utilisateurs) peut lire le fichier, seul le propriétaire peut écrire dedans.
-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux
Le chiffre indique le nombre de liens. Nous vous renvoyons aux exercices sur les liens pour plus d'explications (qui peuvent attendre à un niveau débutant...).
-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux
Le troisième champ donne le nom du propriétaire du fichier. Ici, il s'agit de
l'utilisateur robin
.
-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux
Ce champ indique le groupe de l'utilisateur. Ici, nous apprenons qu'Émilia est une littéraire de la promotion 1995.
-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux
Ce chiffre donne la taille en octets du fichier considéré. Ici, le fichier fait 754 octets, soit moins d'un Ko (1000 octets). C'est un petit fichier.
-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux
Ce champ indique la date de dernière modification du fichier, ici le 22 mars de l'année courante, à 11h59. Quand le fichier date d'une année antérieure, celle-ci est indiquée et l'heure ne figure plus.
-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux
Vient enfin le nom du fichier. Le suffixe .aux
montre qu'il s'agit
d'un fichier produit par LaTeX lors de la compilation d'un fichier
projet.tex
.
Si on tape
ls -l repertoire/
c'est le contenu du répertoire qui s'affiche, et pas son statut à lui.
L'option -d
(directory) permet de lister le répertoire
lui-même.
Ce sont les caractères suivants :
slash | (/ ) |
pour un répertoire |
arobase | (@ ) |
pour un lien symbolique |
étoile | (* ) |
pour un exécutable |
pipe | (| ) |
pour un pipe nommé |
égal | (= ) |
pour un socket |
C'est l'option -F
qui permet de les afficher.
Avoir le droit d'«exécuter» un répertoire, c'est avoir le droit d'y accéder, de s'y déplacer; mais je n'ai pas le droit de «lire» son contenu. Donc, à moins d'en être propriétaire, je ne peux pas afficher le contenu d'un répertoire ayant comme droits :
drwx--x--x