95 votes

Comment copier les liens symboliques vers la cible comme des dossiers normaux ?

J'ai un dossier avec des liens symboliques :

marek@marek$ ls -al /usr/share/solr/
razem 36
drwxr-xr-x   5 root root  4096 2010-11-30 08:25 .
drwxr-xr-x 358 root root 12288 2010-11-26 12:25 ..
drwxr-xr-x   3 root root  4096 2010-11-24 14:29 admin
lrwxrwxrwx   1 root root    14 2010-11-24 14:29 conf -> /etc/solr/conf

Je veux le copier dans ~/solrTest mais je veux aussi copier les fichiers à partir du lien symbolique.

quand j'essaie de cp -r /usr/share/solr/ ~/solrTest

Je vais avoir un lien symbolique ici :

marek@marek$ ls -al ~/solrTest
razem 36
drwxr-xr-x   5 root root  4096 2010-11-30 08:25 .
drwxr-xr-x 358 root root 12288 2010-11-26 12:25 ..
drwxr-xr-x   3 root root  4096 2010-11-24 14:29 admin
lrwxrwxrwx   1 root root    14 2010-11-24 14:29 conf -> /etc/solr/conf

123voto

AronVanAmmers Points 526
cp -Lr /usr/share/solr/ ~/solrTest

Vérifiez le man pour les commandes unix avec man cp

   -L, --dereference
          always follow symbolic links in SOURCE

14voto

Migol Points 251

De la page de manuel :

'-L' ,'--dereference' - Suivre les liens symboliques lors de la copie à partir de ceux-ci. Avec cette option, cp ne peut pas créer de lien symbolique. Par exemple, un lien symbolique (vers un fichier ordinaire) dans l'arbre source sera copié vers un fichier ordinaire dans l'arbre de destination.

C'est donc l'option que vous devriez essayer.

6voto

amphetamachine Points 1603
cp -r -L /usr/share/solr/ ~/solrTest

De la cp(1) page de manuel :

  -L, --dereference
        always follow symbolic links in SOURCE

0voto

Andreas Wong Points 557

Une solution rapide consiste à :

$ mkdir dest_dir
$ cp symlink_dir/* dest_dir/

l'inconvénient est que vous devez d'abord créer le répertoire de destination

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X