Je travaillais dans mon terminal, quand j'ai mal orthographié pendant que cd à la racine (/ ). Par accident, j'ai tapé // et je suis entré dans le terminal :
[email protected]://#
Quand je tape pwd , je reçois la réponse // mais quand je tape ls -s j'ai la même liste que dans / répertoire.
Lorsque vous tapez plus de 2, c'est-à-dire /// vous obtenez :
[email protected]:/#
Toujours 1 / sauf pour 2. Y a-t-il une différence et qu'est-ce que // pour ?
Meilleure réponse
/ est équivalent à //
À partir de la spécification POSIX (soulignement ajouté) :
3.267 Chemin d'accès
Chaîne utilisée pour identifier un fichier. Dans le contexte de
POSIX.1-2008, un nom de chemin peut être limité à {PATH_MAX} octets, y compris
l'octet nul de fin. Il a un début facultatif<slash>caractères, suivis de zéro ou plusieurs noms de fichiers séparés par<slash>personnages. Un nom de chemin peut éventuellement contenir un ou plusieurs<slash>à la fin personnages. Plusieurs<slash>successifs les caractères sont
considérés comme identiques à un<slash>, sauf dans le cas de
exactement deux<slash>caractères.
Et :
4.12 Résolution des noms de chemin
…
Un nom de chemin composé d'un seul<slash>doit être résolu dans le répertoire racine
du processus. Un nom de chemin nul ne doit pas être
résolu avec succès. Si un nom de chemin commence par deux<slash>successifs caractères,
le premier composant après le<slash>de début les caractères peuvent être
interprétés d'une manière définie par l'implémentation, bien que plus de
deux<slash>de tête les caractères doivent être traités comme un seul<slash>caractère.
Pour une discussion intéressante sur les exceptions (cygwin et répertoires), consultez :Comment Linux gère-t-il plusieurs séparateurs de chemins consécutifs (/home////nom d'utilisateur///fichier) ?