Você terá que mostrar os arquivos de qualquer maneira, porque move não funcionará em um arquivo que não pode ser encontrado (mesmo que você forneça o nome completo do arquivo). Não há sinalização para mover para que ele procure por arquivos marcados com o atributo oculto.
Exibe os arquivos com attrib -h . Substitua sua linha for
por este conjunto:
for /f "delims=" %%f in ('dir /ad /b /s %root%') do (
@attrib -h "%%f\~$*.SLD*"
@move "%%f\~$*.SLD*" %dest%
)
Você pode usar uma ferramenta mais sofisticada, como xcopy ou robocopy , que pode operar em arquivos ocultos. É claro que essas são ferramentas de cópia, portanto, você ainda terá que mostrar os arquivos originais e excluí-los depois que a cópia terminar.