Isso deve ser facilmente possível com o PowerShell. Eu ainda não testei isso, então você deve experimentar alguns dados de amostra antes de usá-los em seus arquivos reais.
Get-ChildItem '\ServerA\Students' | ForEach-Object {$NewFolder = $_.Name.Substring(0,6); Move-Item $_ "\ServerB\$NewFolder14_Hockey"}
Você pode ver resultados inesperados se alguns dos arquivos em \ServerA\Students
não corresponderem à convenção de nomenclatura especificada por você.
Isto, por exemplo, faz o seguinte:
\ServerA\Students\Y9L-01_HockeyChampionship.xlsx
será movido para \ServerB\Y9L-0114_Hockey\Y9L-01_HockeyChampoinship.xlsx
Se você precisar somente mover os arquivos do Excel, precisará filtrar o restante adicionando Where-Object
da seguinte forma:
Get-ChildItem '\ServerA\Students' | Where-Object {$_.Extension -eq '.xlsx'} | ForEach-Object {$NewFolder = $_.Name.Substring(0,6); Move-Item $_ "\ServerB\$NewFolder14_Hockey"}