Este script do PowerShell irá digitalizar uma pasta e imprimir todos os arquivos e pastas que não contenham um conjunto de caracteres ou esteja acima de um determinado comprimento:
$path="Q:\Test";
$length=55;
$legalChars="^([a-z0-9\.\-_ ])+$";
Get-ChildItem $path -recurse | %{
if(($_.Name).length -gt $length)
{
write-host $_.FullName
}
elseif($_.Name -notmatch $legalChars)
{
write-host $_.FullName
}
}
Edit: Agora ele só testa o comprimento do nome do arquivo, não o comprimento do caminho inteiro, alterando a primeira condição if de .Name para .FullName para testar o tamanho do caminho.