Crea enlaces simbólicos recursivamente para un árbol completo

20

Estoy buscando un comando que vuelva a crear un árbol completo de archivos en un directorio diferente. Preferiría tener todos los enlaces simbólicos absolutos. ¿Puedo hacer eso con un hallazgo y xargs? ;-)

lzap
fuente
1
No entiendo la idea. Si crea, por ejemplo, un enlace simbólico llamado /tmp/somedirectoryapuntando /home/me/somegreatdir, todos los contenidos de somegreatdirserán visibles debajo /tmp/somedirectory. Esto necesita solo un enlace simbólico para todo el árbol. ¿O qué más quieres?
enero

Respuestas:

26

cp -rs source/ dest/debería hacer el truco. La estructura del directorio se recreará en dest / con cada archivo como un enlace simbólico a su contraparte en la fuente.

Pablo Castellazzi
fuente
También mi primer intento. No se cppudo crear un enlace simbólico para source/some_deeper_dir/files.
Jokester
1
En mi experiencia, debe usar la ruta completa a la fuente (por ejemplo cp -Rs /home/myusername/source dest), de lo contrario, se quejará. aquí hay una referencia: lists.gnu.org/archive/html/help-gnu-utils/2004-08/msg00039.html
22 grados
4

En caso de cp -rsque no sea la respuesta que está buscando, lndirpodría ser la respuesta correcta.

Mikko Rantalainen
fuente
Se manejan estructuras de subdirectorios perfectamente profundos. Lo sudo apt-get install xutils-dev
instalé