Come copio un collegamento simbolico?


43

Ho un collegamento simbolico a un file in una directory. Vorrei avere lo stesso link in un'altra directory. Come copio un collegamento simbolico?

Ho provato a cp il link simbolico ma questo copia il file a cui punta invece del link simbolico stesso.


1
Fa cpsul sostegno CentOS -Po --no-dereferenceswitch?
arte

@manatwork: grazie lo ha appena trovato. Se vuoi pubblicarlo come risposta, lo accetterò.
Utente

Risposte:


57

Utilizzare cp -P(maiuscola P) per non attraversare mai alcun collegamento simbolico e copiare invece il collegamento simbolico.

Questo può essere combinato con altre opzioni come -Rcopiare una gerarchia di directory: cp -RLattraversa tutti i collegamenti simbolici nelle directory, cp -RPcopia tutti i collegamenti simbolici in quanto tali. cp -Rpotrebbe fare l'uno o l'altro a seconda delle varianti di unix; Per cpimpostazione predefinita, GNU (come trovato su CentOS) -P.

Anche con -P, è possibile copiare la destinazione di un collegamento simbolico in una directory sulla riga di comando aggiungendo un /alla fine: cp -RP foo/ barcopia l'albero di directory a cui foopunta.

GNU cpha una comoda -aopzione che unisce -R, -P, -pe un po 'di più. Crea una copia esatta della fonte (per quanto possibile), preservando la gerarchia di directory, i collegamenti simbolici, le autorizzazioni, i tempi di modifica e altri metadati.


3
Attenzione, una volta copiato / spostato, un collegamento simbolico potrebbe interrompersi (se l'origine è un collegamento simbolico a un percorso relativo).
Stéphane Chazelas il

3
c'è un modo per impedire la rottura dei symlink se ci si sposta in una directory superiore o inferiore?
Andrew Brown,

Come nota: "GNU cp" non è la stessa cosa di gcp, che uso. gcp -Pè attualmente rotto, anche nel 2019. (sospiro).
tgm1024,

1

Controlla questa risposta https://superuser.com/a/315757/53590 per una versione specifica di CentOS sul problema. L'intera domanda potrebbe aiutarti, ma il bit in fondo è specificamente CentOS.


1
Nota che altri possono scegliere un ordine diverso dal tuo per elencare le risposte. Inoltre, l'ordine potrebbe cambiare nel tempo. Si prega di inviare un collegamento diretto alla risposta inviata. (Fai clic sul link "condividi" sotto la risposta e copia il link diretto che appare.)
manatwork
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.