Como copio um link simbólico?


41

Eu tenho um link simbólico para um arquivo em um diretório. Eu gostaria de ter esse mesmo link em outro diretório. Como copio um link simbólico?

Tentei cp o link simbólico, mas isso copia o arquivo para o qual aponta, em vez do próprio link simbólico.


11
Será que cpo apoio CentOS -Pou --no-dereferenceswitch?
manatwork

@ manatwork: Obrigado, acabou de encontrar isso. Se você quiser publicá-lo como resposta, eu aceito.
Utilizador

Respostas:


54

Use cp -P(P maiúsculo) para nunca percorrer nenhum link simbólico e, em vez disso, copie o link simbólico.

Isso pode ser combinado com outras opções, como -Rcopiar uma hierarquia de diretórios - cp -RLpercorre todos os links simbólicos para diretórios, cp -RPcopia todos os links simbólicos como tais. cp -Rpode fazer um ou outro, dependendo das variantes do unix; O GNU cp(como encontrado no CentOS) é padronizado como -P.

Mesmo com -P, você pode copiar o destino de um link simbólico para um diretório na linha de comando adicionando um /no final: cp -RP foo/ barcopia a árvore de diretórios que fooaponta para.

GNU cptem uma conveniente -aopção que combina -R, -P, -pe um pouco mais. Ele faz uma cópia exata da fonte (na medida do possível), preservando a hierarquia de diretórios, links simbólicos, permissões, tempos de modificação e outros metadados.


3
Cuidado, uma vez copiado / movido, um link simbólico pode ficar quebrado (se a origem for um link simbólico para um caminho relativo).
Stéphane Chazelas

3
existe uma maneira de impedir a quebra dos links simbólicos se você estiver mudando para um diretório mais alto ou mais baixo?
Andrew Brown

Como uma observação: "GNU cp" não é a mesma coisa gcpque eu uso. gcp -Pestá quebrado, mesmo em 2019. (suspiro).
tgm1024 21/06

1

Verifique esta resposta https://superuser.com/a/315757/53590 para obter uma abordagem específica do CentOS sobre o problema. A questão toda pode ajudá-lo, mas a parte inferior é especificamente o CentOS.


11
Observe que outras pessoas podem escolher um pedido diferente do seu para listar as respostas. Além disso, a ordem pode mudar com o tempo. Por favor, poste um link direto para a resposta referida. (Clique no link “Compartilhar” abaixo essa resposta e copiar o link direto que aparece.)
manatwork
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.