Crea collegamenti simbolici ricorsivamente per un intero albero


20

Sto cercando un comando per ricreare un intero albero di file in una directory diversa. Preferirei avere tutti i symlink assoluti. Posso farlo con find e xargs? ;-)


1
Non ho idea. Se crei, ad esempio, un collegamento simbolico che /tmp/somedirectorypunta a /home/me/somegreatdir, allora tutto il contenuto di somegreatdirsarà visibile sotto /tmp/somedirectory. Ciò richiede solo un link simbolico per l'intero albero. O cos'altro vuoi?
Jankes,

Risposte:


26

cp -rs source/ dest/dovrebbe fare il trucco. La struttura della directory verrà ricreata in dest / con ogni file che è un link simbolico alla sua controparte nel sorgente.


Anche il mio primo tentativo. Impossibile cpcreare il collegamento simbolico per source/some_deeper_dir/files.
Jokester,

1
Nella mia esperienza, devi utilizzare il percorso completo per la fonte (ad esempio cp -Rs /home/myusername/source dest), altrimenti si lamenterà. ecco una ref: lists.gnu.org/archive/html/help-gnu-utils/2004-08/msg00039.html
22degrees

4

Nel caso in cui cp -rsnon sia la risposta che stai cercando, lndirpotrebbe essere la risposta corretta.


Gestito strutture di sottodirectory perfettamente profonde. Installato su debian usandosudo apt-get install xutils-dev
user299481 il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.