Cihad, o PowerShell é provavelmente a sua melhor aposta aqui.
Fiz um pequeno teste para encontrar todos os caracteres não ingleses em uma pasta usando o código abaixo
Get-ChildItem c:\TurkishFileNames\ | where-object {$_.name -match "[^\x00-\x80]+"}
Isso retorna todos os nomes de arquivos que não estão em inglês. Em seguida, você pode passá-los para remover o item, mas primeiro verifique se está recebendo os nomes corretos. Uma desvantagem aqui é que você estava falando sobre nomes de 'pastas', e eu testei isso com nomes de arquivos.
Ainda assim, acredito que você pode usar o mesmo truque. Se você possui o PowerShell 3.0 ou 4.0 instalado, pode usar -directory para exibir apenas nomes de pastas ao usar Get-ChildItem:
Get-ChildItem c:\TurkishFolderNames\ -directory
O resto será semelhante. Você pode baixar o PowerShell 3.0 ou 4.0 da Microsoft
http://www.microsoft.com/en-us/download/details.aspx?id=34595 (WMF 3.0)
http://www.microsoft.com/en-us/download/details.aspx?id=40855 (WMF 4.0)
O Windows 7 veio com o PowerShell 2.0; se você continuar com isso, ainda poderá usar a sintaxe antiga para obter apenas diretórios:
Get-ChildItem C:\TurkishFolderNames\ | ? {$_.PsIsContainer -eq $true}
Você pode prosseguir com o restante:
Get-ChildItem C:\TurkishFolderNames\ | ? {$_.PsIsContainer -eq $true} | ? {$_.name -match "[^\x00-\x80]+"}
-r
:) também eu precisava para escrever os caracteres um a um como[\xb1\xc4]