Como essa é uma pergunta duplicada , esta pequeno script de bytebuster pode ser útil. Ele simplesmente move os arquivos para trás e para frente entre as unidades X: e Y: em Y: \ fromX e X: \ fromY até ficar sem espaço livre na unidade de destino atual, depois alterna source / dest até que não haja diretórios exceto Y: \ fromX e X: \ fromY.
Naturalmente, isso só funcionará se nenhuma das unidades contiver arquivos maiores que a soma de espaços livres nas duas unidades, e pode não funcionar mesmo assim (devido à ordem dos arquivos e ao fato de ser um script realmente simples). Para trabalhar com segurança, é necessário que cada unidade tenha espaço livre maior que o maior arquivo transferido.
É muito simples e, se você preferir o Linux, pode facilmente reescrevê-lo usando o bash / rsync com rsync --remove-source-files --exclude=dir
em vez de robocopy /MOVE /XD dir
.