Benchmark rsync. Se não der certo, tente:
find /dirA -mtime $whatever -print |
xargs tar -cpf - |
{ cd /dirB && tar -xvf -; }
Eu preciso encontrar uma maneira muito eficiente de mover um arquivo de correspondência -mtime de uma árvore de diretórios para outro, mantendo o mesmo subdiretório onde ainda não existe.
por exemplo. mova / dirA / subdir1 / subdir2 / nome do arquivo para / dirB / subdir1 / subdir2 / filename
em que subdir1 / subdir2 pode ou não existir em dirB / no momento da mudança.
E significado eficiente ao concluir isso em uma árvore de vários milhões de arquivos antes da próxima era glacial (de preferência abaixo de 24 horas).
O Rsync vem à mente, mas alguns dizem que não é tão eficiente para essas chamadas de arquivo único correspondentes.
Se isso estiver no mesmo sistema de arquivos com diário, um arquivo moverá apenas uma manipulação de metadados de catálogo do sistema de arquivos e não reescritas de blocos reais, sendo assim muito mais eficiente?
Benchmark rsync. Se não der certo, tente:
find /dirA -mtime $whatever -print |
xargs tar -cpf - |
{ cd /dirB && tar -xvf -; }
Tags command-line find files move