Comando Linux para copiar como links físicos, enquanto exclui arquivos indesejados?

1

Estou procurando um comando que se comporte como

cp -al

ao criar links físicos em vez de copiar o conteúdo do arquivo e

rsync -a --delete

na remoção de arquivos do destino que não estão presentes na origem. Analisei as opções rsync relacionadas a links físicos, mas elas não parecem capazes de apenas criar links físicos.

Esse comando existe no Linux?

    
por DanL4096 29.10.2014 / 13:44

1 resposta

0

Digamos que você esteja trabalhando com diretórios, denominados 'src' e 'dest', para a origem e o destino de sua cópia, respectivamente. Você pode usar o seguinte canal de comando para eliminar os arquivos de destino que não estão presentes na fonte:

find src/* dest/* |cut -d'/' -f2- |sort |uniq -u |xargs printf "dest/%s\n" |xargs rm -f

Tenha em atenção que isto só funciona se os nomes dos seus ficheiros não contiverem espaço em branco ou \'" .

    
por 29.10.2014 / 18:10