¿Por qué agregar una barra al final después de un destino rsync?

Pregunta:

Según esta página web, agregar '/' al final de un destino rsync produce un resultado diferente de no agregarlo.

Intenté probar esto, pero no puedo verificarlo:

$ mkdir dir{1..3}
$ touch dir1/file
$ rsync -r dir1/ dir2
$ rsync -r dir1/ dir3/
$ ls dir*
dir1:
file

dir2:
file

dir3:
file

¿Tiene alguna utilidad añadir una '/' al destino?

Respuesta:

Hace una diferencia cuando la fuente es un archivo y el directorio de destino no existe. Por ejemplo, tome un archivo llamado file como fuente:

  • $ rsync file dest/ creará una copia del file dentro de un directorio dest , mientras que
  • $ rsync file dest hará una copia del file llamado dest

Para agregar (de los comentarios); si ya existe un directorio dest , se creará un file copia en dest en los dos casos anteriores.

Ejemplo básico:

~/test > touch file
~/test > mkdir dest1
mkdir: created directory 'dest1'
~/test > tree
.
├── dest1
└── file

1 directory, 1 file
~/test > rsync file dest1
~/test > rsync file dest2
~/test > rsync file dest3/
~/test > tree
.
├── dest1
│   └── file
├── dest2
├── dest3
│   └── file
└── file

2 directories, 4 files
~/test >

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım