web-dev-qa-db-fra.com

Quand dois-je ajouter un séparateur de répertoire à la fin d'un nom de chemin?

Les chemins d'accès aux répertoires dans le code peuvent être utilisés principalement avec ou sans caractère de séparation à la fin. Ainsi, par exemple, les commandes suivantes dans un shell Unix sont identiques:

  • ls /usr/bin
  • ls /usr/bin/

Ou de même dans une console Windows:

  • dir C:\Windows
  • dir C:\Windows\

De plus, la plupart des serveurs ne se soucient pas d'une barre oblique (manquante) après un chemin URL:

Parfois, j'ai vu cette interchangeabilité reflétée par une utilisation incohérente en texte brut, où les noms de répertoire sont présentés au lecteur parfois avec un séparateur à la fin et parfois sans, même dans le même contexte.

Lors de l'écriture d'un texte lisible par l'homme, comme une page de manuel ou une entrée de journal, quand est-ce une bonne idée d'ajouter un séparateur de répertoire après un nom de chemin, et quand non? Quels sont les avantages et les inconvénients des différentes représentations?

1
GOTO 0

Si l'utilisateur lit /usr/bin/ il saura immédiatement que bin est un répertoire et non un fichier. Si l'utilisateur lit /usr/bin il n'a aucune distinction à faire.

Comment les systèmes d'exploitation font-ils ce travail? Lorsque vous utilisez la commande a comme ls -l sous Unix ou dir sous Windows, la sortie fait la distinction entre les fichiers et les répertoires comme celui-ci

  • Unix

    -rw-r--r-- 1 root root 15276 Oct 5 2004 a2ps.cfg

    drwxr-xr-x 4 root root 4096 Feb 2 2007 acpi

où le premier symbole est - pour un fichier et d pour un répertoire

  • Les fenêtres

    05/14/2010 02:00 AM 135 README.TXT

    04/26/2013 11:08 AM <DIR> users

135 est la taille du fichier en octets (ce qui signifie qu'il s'agit d'un fichier) et <DIR> est la balise de répertoire.

1
RawBean

Les navigateurs ajoutent généralement une barre oblique de fin lors de la visite de la racine d'un site Web (www.google.com).

En termes de conception/développement Web, il existe une grande différence entre les URL suivantes si vous utilisez des liens relatifs:

  • example.com/foo
  • example.com/foo/

S'il existe un lien vers ./ dans le document (par exemple. <a href="./">elsewhere</a>), la page sur laquelle vous vous retrouverez est assez différente:

  • example.com/foo -> example.com/
  • example.com/foo/ -> example.com/foo/
0
cimmanon