Estou tentando mover meus arquivos do Win 7 para minha caixa FreeNAS. Continuo recebendo erros porque meu caminho é muito longo e alguns arquivos não são transferidos porque possuem caracteres especiais, como acentos de caracteres. Alguns arquivos são transferidos, mas o nome do arquivo muda. ou seja. "é" -> "_".
Estou tentando evitar isso. Que software posso usar para verificar o diretório fornecido em busca de nomes de caminhos longos e nomes de arquivos com caracteres inválidos?
Responder1
Este script do PowerShell verificará uma pasta e imprimirá todos os arquivos e pastas que não contenham um conjunto de caracteres ou que estejam 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
}
}
Editar: agora ele testa apenas o comprimento do nome do arquivo, não o comprimento inteiro do caminho; altere a primeira condição if de .Name para .FullName para testar o comprimento do caminho.