Crie links simbólicos recursivamente para uma árvore inteira


20

Estou procurando um comando que recrie uma árvore inteira de arquivos em um diretório diferente. Eu preferiria ter todos os links simbólicos absolutos. Posso fazer isso com um find e xargs? ;-)


1
Eu não entendi a idéia. Se você criar, por exemplo, um link simbólico chamado /tmp/somedirectoryapontando para /home/me/somegreatdir, todo o conteúdo de somegreatdirserá visível em /tmp/somedirectory. Isso precisa de apenas um link simbólico para a árvore inteira. Ou o que mais você quer?
jankes

Respostas:


26

cp -rs source/ dest/deve fazer o truque. A estrutura do diretório será recriada em dest / com cada arquivo sendo um link simbólico para sua contraparte na origem.


Também minha primeira tentativa. Falha ao conseguir cpcriar o link simbólico para source/some_deeper_dir/files.
Jokester

1
Na minha experiência, você tem que usar o caminho completo para a origem (por exemplo cp -Rs /home/myusername/source dest), caso contrário, ele irá reclamar. aqui está uma ref: lists.gnu.org/archive/html/help-gnu-utils/2004-08/msg00039.html
22degrees

4

Caso cp -rsnão seja a resposta que você está procurando, lndirpode ser a resposta correta.


Manejou estruturas de subdiretórios perfeitamente profundas. Instalou-o no debian usandosudo apt-get install xutils-dev
user299481 03/09
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.