Pourquoi ls -a n'affiche-t-il pas les fichiers que le Finder affiche ?

Aug 17 2020

Lorsque vous naviguez vers /usr/local/binun fichier appelé "R", vous pouvez voir :

Mais quand cd /usr/local/binet ls(ou ls -a), on voit une longue liste de fichiers, mais pas de fichier nommé R :

J'ai été surpris par cela - apparemment, le finder peut voir des fichiers qui lsne le peuvent pas. Pourquoi ls -an'affiche-t-il pas tous les fichiers que le Finder affiche ?

Réponses

20 Allan Aug 17 2020 at 07:55

C'est là, mais vous ne le voyez pas parce que ce n'est pas là où vous l'attendez parce que le tri dans le Finder est différent du tri dans Bash/Zsh. Fondamentalement, Finder effectue une recherche insensible à la casse alors que Bash est sensible à la casse. Par exemple, "a" suit "Z"

Si vous cherchez un dossier spécifique et que vous connaissez le cas, vous pouvez utiliser un peu lsde magie pour le trouver...

$ ls -Ad R*

Où...

  • -A= Lister tous les fichiers, sauf .et..
  • -d= Traiter les répertoires comme des fichiers et ne pas les rechercher de manière récursive
  • R*= Tous les fichiers qui commencent par la lettre "R"