¿Qué significa / (barra diagonal) en cd?

1

Utilizo los siguientes comandos para cambiar el directorio y generalmente funciona bien.

[max@localhost max]$ cd /
[max@localhost /]$ cd /home/max/
[max@localhost max]$ pwd
/home/max

Pero hoy, por error, ingresé dos en //lugar de uno /y para mi sorpresa, también funciona. Entonces, probé con varios ejemplos y todos funcionan bien sin dar ningún tipo de error.

[max@localhost /]$ cd /home///////////////max/////////////////////
[max@localhost max]$ pwd
/home/max
[max@localhost max]$ cd /
[max@localhost /]$ cd /////////////////home/max///////////
[max@localhost max]$ pwd
/home/max

¿Qué significan estas barras diagonales ( /y ///////) y qué hacen y representan?

max
fuente

Respuestas:

6

Está definido por los estándares IEEE :

Un nombre de ruta puede contener opcionalmente una o más barras diagonales finales. Varias barras sucesivas se consideran iguales a una barra.

En realidad, hay una pregunta similar y la solución se describe allí: cómo Linux maneja múltiples separadores de ruta .

kenorb
fuente
2
Simplifica la combinación de rutas al permitirle evitar las pruebas de barras inclinadas iniciales o finales. Simplemente puede hacerlo path1 + "/" + path2y funcionará tanto si path1tiene una barra inclinada final como si no path2.
David Schwartz el