
Necesito copiar la estructura de directorios de un lugar a otro. Necesito copiar sólo carpetas y enlaces simbólicos.
yo uso el comando
find $SOURCE_PATH/ \( -type l -o -type d \) -printf "%P\0" | rsync --files-from - --from0 -av $SOURCE_PATH $USER@$DESTINATION_SERVER:/$DESTINATION_PATH/$SOURCE_PATH
El comando tiene éxito y copia la carpeta y los enlaces. Mi problema es que los enlaces apuntan al destino anterior.
mi ruta de origen esaplicación/cg/dev y
la ruta de destino estmp/app/cg/dev
y ahora mis enlaces que copié apuntan a app/cg/dev/somefolder. los necesito para señalartmp/app/cg/dev/alguna carpeta.
Después de sincronizar todos los enlaces, una buena manera de corregirlos sería si pudiera leer la ruta del enlace y luego simplemente concatenar mi ruta de destino. ejemplo
find . -type l | while read l; do
concatenate destination folder and readlink l
done
¿Alguien puede ayudarme a escribir ese código?