Quais pastas estão monopolizando sua unidade de disco? Descubra com este guia do Windows.

Se você quiser investigar quais pastas estão ocupando seu espaço de armazenamento, verifique o tamanho da pasta para determinar o que está sobrecarregando sua unidade. Verificar o tamanho da pasta também é útil se você precisar mover uma pasta grande para uma unidade USB ou armazenamento em nuvem. Uma maneira fácil de fazer isso no Windows é usar o File Explorer e abrir a caixa de diálogo Propriedades da pasta.

O File Explorer, no entanto, pode ser lento para determinar o tamanho de uma pasta grande. E não é ideal se você deseja gerenciar arquivos e pastas em vários computadores em uma organização. Para remediar isso, você pode usar o PowerShell para calcular rapidamente os tamanhos das pastas no Windows.

Como calcular o tamanho de uma pasta usando o PowerShell no Windows

Para calcular o tamanho de uma pasta, você precisará usar os dois cmdlets do PowerShell, Get-ChildItem e Measure-Object, seguidos pela propriedade Length e pelo parâmetro Sum.

O cmdlet Get-ChildItem permite recuperar informações de um diretório especificado e seus subdiretórios. O cmdlet Measure-Object e as propriedades e parâmetros associados calculam a soma da propriedade length para os itens retornados pelo cmdlet Get-ChildItem (alias 'cgi').

Se você é novo no PowerShell, pode querer ler nosso explicador em cmdlets essenciais do PowerShell para entender os fundamentos do PowerShell.

Agora que você está familiarizado com os comandos do PowerShell, veja como usá-los para obter qualquer tamanho de pasta.

  1. aperte o Ganhar chave e tipo powershell.
  2. Em seguida, clique com o botão direito do mouse em Windows PowerShell e selecione Executar como administrador. Clique Sim se solicitado por Controle de conta de usuário.
  3. Na janela do PowerShell, digite o seguinte comando:
     Get-ChildItem FolderPath | Measure-Object -Property Length -sum
  4. No comando acima, substitua FolderPath com o caminho do diretório onde sua pasta está salva. Por exemplo, se você deseja calcular o tamanho da pasta Download localizada no E:\ drive, o comando completo ficará assim:
    Get-ChildItem E:\Download | Measure-Object -Property Length -sum
  5. O retorno mostrará a contagem de itens na pasta e seu tamanho em bytes. Você precisará dividir a soma total por 1024 para obter o tamanho em KBs (Kilobytes). Divida por 1024 novamente para obter o tamanho em MBs (Megabytes) e assim por diante.

Como alternativa, você pode usar a propriedade .sum para recuperar o tamanho total e dividi-lo por 1 milhão ou bilhão para convertê-lo em megabytes ou gigabytes.

Por exemplo, se você deseja saber o valor em gigabytes (MBs), digite o seguinte comando e pressione Digitar:

(gci E:\Download | measure Length -s).sum / 1Mb

Da mesma forma, substitua 1Mb com 1Gb para recuperar o tamanho da pasta em gigabytes.

(gci E:\Download | measure Length -s).sum / 1Gb

Se você deseja identificar o tamanho de tipos específicos de arquivos em um diretório, pode usar o caractere curinga * seguido pelo tipo de extensão do arquivo. Ele mostrará apenas o tamanho do arquivo para o tipo de arquivo especificado.

Por exemplo, para descobrir quanto espaço é ocupado pelas imagens em uma pasta, use o seguinte comando:

(gci E:\download *.jpg | measure Length -s).sum / 1Mb 

Adicionar um caractere curinga permite determinar se um tipo de arquivo específico ocupa mais espaço na pasta. Você pode filtrar o conteúdo com base na extensão do arquivo e excluí-lo ou movê-lo, se necessário.

Como obter o tamanho da subpasta usando o PowerShell

O comando acima calculará apenas o tamanho do seu diretório ou pasta principal. Para calcular o tamanho total dos arquivos no diretório especificado e seus subdiretórios, você precisará adicionar o -Recurso parâmetro para o comando acima. Além disso, usaremos o parâmetro -force para acessar arquivos ocultos e de sistema.

Por exemplo, para obter o tamanho total do seu diretório C:\Users e seus subdiretórios, incluindo os arquivos ocultos, o comando do PowerShell terá a seguinte aparência:

((gci -force c:\Users -Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb) 

A saída neste exemplo mostra 54 GB aprox. como o tamanho total da pasta c:\users. No comando acima, o parâmetro -ErrorAction SilentlyContinue é usado para suprimir qualquer mensagem de erro que possa ocorrer durante o processo.

Como obter o tamanho da subpasta em um formato de tabela usando o PowerShell

Se quiser saber o tamanho de todas as subpastas individualmente, você pode executar um script do PowerShell para obter uma visualização gráfica de todas as subpastas e seus tamanhos. Um script geralmente é útil se você tiver um diretório grande com várias subpastas e precisar trabalhar nelas com frequência.

Para executar este script, você pode usar o PowerShell ISE. Veja como fazer:

  1. aperte o Chave de vitória e digite PowerShell ISE. Clique em ISE do Windows PowerShell do resultado da pesquisa.
  2. Em seguida, copie e cole o seguinte comando no console do PowerShell ISE. Certifique-se de alterar o diretório de c:\ para o diretório de sua preferência.
     $targetfolder = 'C:\'
    $dataColl = Get-ChildItem -Force $targetfolder -Directory -ErrorAction SilentlyContinue | ForEach-Object {
    $len = Get-ChildItem -Recurse -Force $_.FullName -File -ErrorAction SilentlyContinue | Measure-Object -Property Length -Sum | Select-Object -ExpandProperty Sum
    $foldername = $_.FullName
    $foldersize = '{0:N2} GB' -f ($len / 1Gb)
    [PSCustomObject]@{
    foldername = $foldername
    foldersizeGb = $foldersize
    }
    }
    $dataColl | Out-GridView -Title "Size of Subdirectories in $targetfolder"
  3. Em seguida, clique Executar script ou pressione F5 e aguarde a execução do script. Dependendo do tamanho da pasta, você verá um "Tamanho dos subdiretórios" listando todos os subdiretórios com seus tamanhos.

Além disso, você pode usar os operadores de comparação do PowerShell para filtrar os resultados. Por exemplo, para obter o tamanho do arquivo para pastas criadas entre junho de 2023 e julho de 2023, você pode usar o seguinte comando:

(gci -force E:\Download – Recurse -ErrorAction SilentlyContinue |? {$_.CreationTime -gt '01/23/23' -AND $_.CreationTime -lt '02/23/23'}| measure Length -s).sum / 1Gb

No comando acima, "?" é um pseudônimo para o Onde-objeto cmdlet, -gt, -E, -It são operadores de comparação e CreationTime é uma condição. O comando verifica se o CreationTime dos arquivos no subdiretório está dentro do intervalo de datas especificado e mostra a saída somente se a condição for satisfeita. Se você receber um erro, verifique se o formato de data e hora no comando corresponde ao formato do sistema e tente novamente.

Obtenha o tamanho da pasta e da subpasta usando o PowerShell

O File Explorer no Windows pode ajudá-lo a calcular o tamanho de qualquer pasta e arquivo. No entanto, se você trabalha com várias pastas grandes ou em uma organização com centenas de computadores para gerenciar, usar o PowerShell pode ajudá-lo a fazer as coisas mais rapidamente.

Dito isso, se você preferir uma solução mais baseada em GUI, considere usar uma ferramenta de análise de disco. Essas ferramentas podem ajudá-lo a visualizar a estrutura de arquivos do sistema e mostrar um relatório detalhando o conteúdo que ocupa mais espaço em seu sistema.