Eu gosto de usar cp -rl dir1 dir2 para fazer uma cópia recursiva de dir1 em dir2 (usando links físicos para economizar armazenamento e geralmente seguido por rsync para fazer backups progressivos).
A questão é que, se dir2 já existir, o comando acima simplesmente criará a cópia abaixo dela ( dir2/dir1 ). Às vezes, eu gostaria apenas de atualizar um dir2 existente e atualizá-lo para uma sincronização perfeita com dir1 . É claro que eu poderia primeiro eliminar dir2 do caminho primeiro, ou seja:
rm -rf dir2
cp -rl dir1 dir2
Mas isso me parece um desperdício. Existe uma maneira de usar cp e / ou rsync para atualizar o destino (e remover material extra) para atingir o resultado das duas linhas acima com eficiência?