Questão Como encontrar as maiores pastas (por número de arquivos) no Windows


Minha pesquisa no Windows 7 é bem lenta em um computador e rápida no outro. Eu descobri que um computador tem 90.000 arquivos indexados, enquanto o outro tem 1,5 milhão.

Então, eu gostaria de encontrar as maiores pastas por número de arquivos, pois alguns são irrelevantes e excluí-los.

Eu tenho ferramentas para encontrar as maiores pastas por tamanho de dados, mas não pelo número de arquivos dentro. Alguma ideia?


4


origem




Respostas:


Se você estivesse usando o Windows XP, você poderia usar o Tamanho da pasta shell-extension que lhe dá algumas colunas que você pode adicionar ao Explorer para mostrar o tamanho de uma pasta, bem como o número de arquivos / pastas / ambos contidos nele, permitindo que você visualize e classifique-os dentro do Explorer.

Infelizmente, o Vista e o superior deixaram cair a funcionalidade da API que o Tamanho da Pasta e programas similares usam, então eles não funcionam mais.

Em vez disso, você precisará usar uma extensão que não seja de shell. Felizmente, existem vários programas que podem fazer um bom trabalho visualizando o uso do espaço em um sistema de arquivos.

A maioria deles tem alguns modos diferentes, incluindo text-list / tree (como no Explorer), gráfico de pizzae mapa da árvore, na qual os arquivos e subdiretórios são representados por quadrados ou retângulos. Deve haver uma opção para exibir o número de arquivos / pastas além do tamanho, geralmente no modo de lista de texto / árvore. Às vezes, para obter o número de arquivos / pastas, é necessário selecionar a pasta e visualizar suas propriedades (o que é menos conveniente, mas ainda mais fácil do que manualmente no Explorer).

Aqui estão alguns dos mais populares (alguns freeware, outros shareware):


7



Sim, o WinDirStat é o mais rápido e fácil, porque a visualização padrão tem o número de itens ali mesmo na lista. - Synetech
WinDirStat é o meu favorito também. - KCotreau


E outro, TreeSize Free.      (Nesta foto, os diretórios são nomeados 0-F.)

enter image description here


3





Eu uso um programa chamado Windirstat que analisa todos os arquivos e pastas em uma unidade e oferece uma boa exibição gráfica de quais arquivos ou pastas estão usando mais espaço. Você pode então mover ou excluir arquivos indesejados e arrumar seu disco.


1





Uma maneira rápida de obter uma lista classificada de pastas por número de arquivos - incluindo subpastas - é:

PowerShell 3+

$a=@{}
Get-ChildItem 'D:\' -Recurse -Directory -ErrorAction Ignore | Foreach {
    $a[$_.Fullname] = (Get-ChildItem $_.Fullname -Recurse -File -ErrorAction Ignore).Count
} 
$a.GetEnumerator() | Sort Value -Descending | Format-List

Exemplo de saída

enter image description here

Para quem está interessado em como funciona

  • Get-ChildItem 'D:\' -Recurse -Directory percorre todas as subpastas de um determinado diretório. Mude o caminho para as suas necessidades
  • Em cada subpasta use (Get-ChildItem $_.Fullname -Recurse -File).Count para contar o número de arquivos, incluindo arquivos em subpastas. Pastas em si não contam. Apenas arquivos fazem.
  • Para cada subpasta, adicione uma nova entrada de tabela de hash $a[$_.Fullname] = myValue com o diretório atual como nome. Como valor, adicione nossa contagem de arquivos mencionados anteriormente
  • Depois de todo o trabalho estar feito, use $a.GetEnumerator() para quebrar a tabela de hash de volta em vários itens e canalizá-los para um Sort-Object comando que classifica a tabela de hash por valor e crescente

1