Estou usando cp -ruv sourcedir/ /mnt/destinationdir
para manter facilmente um backup de uma árvore de arquivos.
Ocasionalmente, este comando me diz:
remove '/mnt/destinationdir/path/file'
Estou surpreso, pois man cp
diz:
--update[=UPDATE]
control which existing files are updated;
UPDATE={all,none,none-fail,older(default)}.
-u equivalent to --update[=older]. See below
UPDATE controls which existing files in the destination are
replaced. 'all' is the default operation when an --update option
is not specified, and results in all existing files in the
destination being replaced. 'none' is like the --no-clobber
option, in that no files in the destination are replaced, and
skipped files do not induce a failure. 'none-fail' also ensures
no files are replaced in the destination, but any skipped files
are diagnosed and induce a failure. 'older' is the default
operation when --update is specified, and results in files being
replaced if they're older than the corresponding source file.
Quando cp --update=older
um arquivo será removido do diretório de destino?
EDIT: O trecho acima man cp
é para o coreutils 9.5. Na verdade, estou usando o 9.1, que tem menos controles de atualização, mas, pela página do manual, não acho que ele deva se comportar de forma diferente.