J'écris une bibliothèque pour la manipulation des chaînes de chemin Unix. Cela étant, j'ai besoin de comprendre quelques coins obscurs de la syntaxe dont la plupart des gens ne s'inquiéteraient pas.
Par exemple, mieux que je peux dire, il semble que foo/bar
et les foo//bar
deux vers le même endroit.
En outre, ~
représente généralement le répertoire personnel de l'utilisateur, mais que se passe-t-il s'il apparaît au milieu d'un chemin? Que se passe-t-il alors?
Ces questions et plusieurs dizaines d'autres obscures doivent être répondues si je veux écrire du code qui gère correctement tous les cas possibles. Quelqu'un connaît-il une référence définitive qui explique les règles de syntaxe exactes pour ce genre de choses?
(Malheureusement, la recherche de termes tels que "syntaxe de chemin Unix" fait apparaître un million de pages discutant de la $PATH
variable ... Heck, j'ai même du mal à trouver des balises appropriées pour cette question!)
~
) est traitée dans Comment Linux gère les séparateurs de chemins multiples (/ home //// nom d'utilisateur /// fichier) . La chose la plus proche d'une référence normative serait la spécification POSIX ou Single Unix - pas une lecture facile.