Converte nomes extensos de arquivos em nomes curtos do windows 10?

0

Existe uma maneira de converter nomes extensos de arquivos em um formato curto truncado no pc? Existe uma maneira simples de fazer isso? Eu sou novo em usar o prompt de comando / PowerShell e não entendo completamente o que os scripts longos estão fazendo e como modificá-los.

Eu quero transferir todos os meus arquivos para um disco rígido externo, mas muitos dos arquivos são de um mac com nomes longos e recebo um erro quando tento transferi-los.

    
por Animatoring 13.08.2016 / 00:48

2 respostas

1

Salve o seguinte em um arquivo Set-DosFileName.ps1

[CmdletBinding(SupportsShouldProcess=$true)]
Param(
    [parameter(Mandatory=$true)]
    [string]$folder,
    [switch]$recurse
)

$fso = New-Object -ComObject Scripting.FileSystemObject

Get-ChildItem -Path $folder -File -Recurse:$recurse | ForEach-Object {

    $shortName = $fso.getfile($_.Fullname).ShortName
    if ($shortName -ne $_.Name)
    {
        $fullShortName = Join-Path $_.Directory -ChildPath $shortName
        Move-Item -LiteralPath $_.Fullname -Destination $fullShortName
    }
}

Para usar isso, abra uma janela do PowerShell e mude para o diretório em que você salvou o arquivo:

cd "D:\folder where you saved the script"

então:

.\Set-DosFileName.ps1 -folder "D:\myfiles\Foo Bar" -whatif

O script deve mostrar como ele renomeia seus arquivos.

Para incluir todos os arquivos em subdiretórios, adicione a opção -recurse :

.\Set-DosFileName.ps1 -folder "D:\myfiles\Foo Bar" -whatif -recurse

Se tudo estiver correto, remova a opção -whatif para realmente renomear os arquivos. Eu ainda manteria um backup dos arquivos originais apenas no caso de algo dar errado.

Eu não testei isso com um grande número de arquivos, saiba que alguns nomes de arquivos podem ser bem feios.

    
por 13.08.2016 / 18:12
2

Desde o Windows 10 versão 1607, o limite de comprimento do caminho do arquivo é removido. Para ativar isso , abra regedit.exe , vá para HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem e crie um DOWRD 32Bit LongPathsEnabled e altere o valor para 1 .

Agora, a edição de 260 caracteres desapareceu.

    
por 13.08.2016 / 08:27