Tengo un montón de archivos en un directorio y enlaces a cada uno de esos archivos en otro directorio. Entonces ls -l
se ve algo como esto:
lrwxrwxrwx 1 rembol rembol 89 Jan 25 10:00 copyright.txt -> /home/rembol/solr/target/deploy/data/core/copyright.txt
lrwxrwxrwx 1 rembol rembol 92 Jan 25 10:00 jar-versions.xml -> /home/rembol/solr/target/deploy/data/core/jar-versions.xml
lrwxrwxrwx 1 rembol rembol 85 Jan 25 10:00 lgpl.html -> /home/rembol/solr/target/deploy/data/core/lgpl.html
lrwxrwxrwx 1 rembol rembol 79 Jan 25 10:00 lib -> /home/rembol/solr/target/deploy/data/core/lib
lrwxrwxrwx 1 rembol rembol 87 Jan 25 10:00 readme.html -> /home/rembol/solr/target/deploy/data/core/readme.html
drwxr-xr-x 3 rembol rembol 4096 Jan 25 10:00 server
drwxr-xr-x 2 rembol rembol 4096 Jan 25 10:00 startup
Ahora quiero mover esos archivos vinculados de /home/rembol/solr/target/deploy
a /home/rembol/output/
. Si hago eso simplemente llamando mv
, los enlaces se romperán. No quiero volver a vincular cada archivo por separado, porque hay cientos de ellos (se generan automáticamente).
¿Existe alguna forma inteligente de mover archivos vinculados, en lugar de escribir un script que desvincule, mueva y vuelva a vincular recursivamente para cada archivo en cada subdirectorio?
Respuesta1
La versión corta es que mv
no se puede hacer esto. Deberá reorientar los enlaces usted mismo. Iba a ofrecer una sugerencia sobre cómo hacer esto, pero ya hay una muy buena respuesta a unapregunta similarpublicado en el sitio de Unix/Linux.