Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade

Como Criar Pastas e Subpastas no Windows Até o Limite Máximo

Neste artigo, vamos abordar um aspecto crucial do gerenciamento de arquivos no Windows, a limitação de caracteres para o caminho de pastas e arquivos. O Windows, por padrão, estabelece um limite de 260 caracteres para o caminho completo de uma pasta ou arquivo. Este limite, conhecido como MAX_PATH, geralmente atende às necessidades da maioria dos usuários. No entanto, em cenários onde se lida com uma grande quantidade de dados e estruturas complexas de pastas, pode ser necessário estender esse limite.


Recentemente, o Windows introduziu a possibilidade de configurar caminhos mais longos, estendendo o limite para até 32.767 caracteres. Essa alteração é especialmente útil para gerenciar grandes volumes de dados e organizar pastas e subpastas de maneira eficiente.


Entendendo o Limite de Caracteres no Nome e Caminho de Pastas:
Nome da Pasta: Por exemplo, uma pasta chamada "a" tem apenas 1 caractere. O nome de uma pasta individual não pode exceder 260 caracteres (No meus testes o valor correto seria 247 caracteres).


Caminho da Pasta: Considerando o caminho "C:\temp\a", temos:
1 caractere para o nome da pasta "a"
1 caractere para a barra invertida "\"
4 caracteres para a pasta "temp"
1 caractere para a barra invertida após "temp"
1 caractere para o dois pontos ":"
1 caractere para "C"
Isso totaliza 9 caracteres para o caminho "C:\temp\a". O comprimento total do caminho, incluindo o nome da pasta, não deve exceder 260 caracteres, a menos que o limite estendido esteja habilitado.


No script abaixo, vamos explorar como criar pastas primeiro sem realizar nenhuma configuração, usando as configurações padrão do Windows e, em seguida, vamos realizar uma modificação na chave do registro do Windows para aumentar o limite máximo de caracteres, para que possamos criar nomes de arquivos e pastas com até 32.887 caracteres.


No script abaixo, vamos automatizar a criação de pastas e subpastas com um "loop infinito". O script só vai parar de criar as pastas quando chegar ao limite máximo permitido pelo sistema operacional, causando um erro e finalizando o loop. No caso do Windows 10 e Windows 11, esse limite máximo padrão é de 260 caracteres, mas vamos mostrar como realizar essa alteração para até "32.767" caracteres


"Criando Pastas e Subpastas no Windows Até o Limite Máximo Padrão (260 caracteres)"


<#
.SYNOPSIS
Este script cria pastas e subpastas no Windows até atingir o limite máximo de comprimento de caminho.

.DESCRIPTION
Este script do PowerShell foi desenvolvido por Procedimento.com.br. Ele gera um nome de pasta de 20 caracteres e cria uma série de pastas aninhadas dentro do diretório C:\temp, atualizando continuamente o caminho para refletir a pasta recém-criada. O script exibe o comprimento do caminho atual em cada etapa, demonstrando até que ponto o Windows permite a criação de caminhos de diretório. O script termina quando um erro é encontrado ou quando o limite de comprimento do caminho é atingido.

.NOTES
Autor: Procedimento.com.br
URL Original do Script: https://www.procedimento.com.br/go.php?ambiente=windows&windows=como-criar-pastas-e-subpastas-no-windows-at-o-limite-mximo-um-guia-passo-a-passo-com-scripts
Este script pode ser utilizado por terceiros, desde que mantenham as informações do autor e o link para o script original.

.EXAMPLE
Para executar o script, simplesmente execute-o no PowerShell. Não são necessários parâmetros adicionais.

#>

# Criar uma string para representar um nome de pastas ou arquivo com 1 caracteres
$string = 'a' * 1 # Nesse exemplo estou utilizando apenas 1 caracter, poderia ser mais. Evite criar pasta ou arquivo com mais de 247 caracteres
Write-Host "O nome das pastas e subpastas será: $string"
pause
Clear-Host

# Caminho base onde as pastas serão criadas.
$localDoTeste = "C:\temp"

# Criar o diretório base se ele não existir.
if (-not (Test-Path -Path $localDoTeste)) {
New-Item -ItemType Directory -Path $localDoTeste
}

# Variável para manter o caminho atualizado.
$currentPath = $localDoTeste

# Testar a criação de pastas aninhadas.
while ($true) {
$folderName = "$string" # Nome da nova pasta.
$newPath = Join-Path $currentPath $folderName

# Informar o comprimento do caminho.
Write-Host "Tamanho: $($newPath.Length) caracteres"

# Tentar criar a pasta e capturar qualquer erro.
try {
New-Item -ItemType Directory -Path $newPath -ErrorAction Stop
Write-Host "Sucesso: $newPath"
#Start-Sleep 1

# Atualizar o caminho atual para a nova pasta criada.
$currentPath = $newPath
} catch {
Write-Host "Falha para criar: $newPath - Error: $_"
break
}
}

Este script cria uma pasta com o nome especificado na variável "$string" no diretório "C:\temp" e continua criando subpastas com o mesmo nome até atingir o comprimento máximo de um caminho no Windows, que é definido como 260 caracteres.


"Como Aumentar o Limite Máximo para até 32.767 caracteres?"
Para isso, é necessário habilitar o "LongPathsEnabled (Caminhos Longos)" na chave de registro do Windows. Esse recurso foi introduzido no Windows 10 a partir da versão 1607 e posteriores.


Você pode habilitar o "LongPathsEnabled" executando no PowerShell simplesmente o comando:


New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force
Após fazer isso, basta reiniciar o computador ou o Explorer com o comando:
Stop-Process -Name explorer


Após configurar com sucesso a opção LongPathsEnabled em seu sistema, agora você está pronto para aproveitar as novas possibilidades que essa configuração oferece. Com LongPathsEnabled habilitado, o Windows pode agora lidar com caminhos de arquivos e pastas significativamente mais longos, estendendo o limite anterior de 260 caracteres para até 32.767 caracteres.
Para ver esta nova capacidade em ação, recomendamos que você execute novamente o script que foi utilizado anteriormente.


Ao executar o script agora, você poderá criar arquivos e pastas com nomes muito mais longos do que era possível antes. Isso pode ser particularmente benéfico para organizar e gerenciar grandes conjuntos de dados, ou para lidar com requisitos específicos que demandam estruturas de diretório mais profundas e descritivas.


Lembre-se de que, mesmo com o LongPathsEnabled ativado, alguns aplicativos podem não suportar totalmente caminhos mais longos devido a suas próprias limitações ou configurações. Portanto, é importante testar e verificar se as suas aplicações e ferramentas específicas funcionam como esperado com caminhos estendidos.


Para começar, basta executar o script como você fez anteriormente. Agora, com o novo limite de caracteres em vigor, você poderá explorar as capacidades expandidas de gerenciamento de arquivos e diretórios em seu sistema Windows.


Boa sorte e aproveite a nova funcionalidade!

To share Download PDF