ls -l vs ls -lL

17

Je sais que cela ressemble à un doublon, mais les questions posées précédemment ne répondent pas à ma question

donc dans le shell, je vais dans le /homerépertoire et je crée un répertoire en l'appelantplay

puis je vais dans ce répertoire /home/play, et crée deux fichiers, le premier est un fichier texte, le second est un lien symbolique vers le terminal appelétty

maintenant si j'utilise ls -lj'obtiens la sortie suivante entrez la description de l'image ici

où comme si je mettais ls -lLje reçois ceentrez la description de l'image ici

quelle est cette différence est censée signifier? que signifient les points d'interrogation?

user230406
la source
1
"le second est un lien symbolique vers le terminal" - c'est une façon un peu déroutante de le dire, car ce n'est qu'un lien symbolique vers un fichier appelé terminal, pas vers un terminal ou le terminal au sens habituel du terme. Un lien vers /dev/ttyressemblerait davantage à ce dernier.
ilkkachu

Réponses:

33

L' -Loption indique lsd'afficher des informations pour la cible du lien, pas le lien lui-même. Le rouge de ttyindique généralement un lien cassé, ou un lien qui pointe vers un fichier inexistant, ce qui est le cas ici. Étant donné que la destination n'existe pas, lsne peut pas comprendre les informations à afficher, elle affiche donc des points d'interrogation.

John
la source