Usando rsync
:
rsync -av --delete source/ target
Isso excluiria todo o conteúdo do diretório target
que não corresponde ao conteúdo do diretório source
e também copiaria o conteúdo de source
.
O /
final no final de source/
é significativo, pois sem ele você obteria um diretório em target/source
em vez de tornar target
uma cópia de source
.
A opção -a
(ou --archive
) torna rsync
copiar registros de data e hora e outros metadados, e a opção -v
(ou --verbose
) faz com que rsync
opere com detalhes. Sem --delete
, nenhum conteúdo existente em target
seria excluído (a menos que tivesse o mesmo nome que as coisas em source
, caso em que seria atualizado).