Które foldery zajmują Twój dysk? Dowiedz się, korzystając z tego przewodnika po systemie Windows.

Jeśli chcesz sprawdzić, które foldery zajmują miejsce na dysku, możesz sprawdzić rozmiar folderu, aby określić, co blokuje Twój dysk. Sprawdzanie rozmiaru folderu jest również przydatne, jeśli musisz przenieść duży folder na dysk USB lub do przechowywania w chmurze. Łatwym sposobem na zrobienie tego w systemie Windows jest użycie Eksploratora plików i otwarcie okna dialogowego Właściwości folderu.

Eksplorator plików może jednak wolno określać rozmiar dużego folderu. I nie jest to idealne rozwiązanie, jeśli chcesz zarządzać plikami i folderami na wielu komputerach w organizacji. Aby temu zaradzić, możesz użyć programu PowerShell do szybkiego obliczenia rozmiarów folderów w systemie Windows.

Jak obliczyć rozmiar folderu za pomocą programu PowerShell w systemie Windows

Aby obliczyć rozmiar folderu, musisz użyć dwóch poleceń cmdlet programu PowerShell, Get-ChildItem i Measure-Object, a następnie właściwości Length i parametru Sum.

instagram viewer

Polecenie cmdlet Get-ChildItem umożliwia pobieranie informacji z określonego katalogu i jego podkatalogów. Polecenie cmdlet Measure-Object oraz powiązane właściwości i parametry obliczają sumę właściwości length dla elementów zwróconych przez polecenie cmdlet Get-ChildItem (alias „cgi”).

Jeśli dopiero zaczynasz korzystać z programu PowerShell, możesz przeczytać nasze wyjaśnienie niezbędne polecenia cmdlet programu PowerShell aby zrozumieć podstawy PowerShell.

Teraz, gdy znasz polecenia PowerShell, oto jak ich używać, aby uzyskać dowolny rozmiar folderu.

  1. wciśnij Wygrać klucz i typ Powershell.
  2. Następnie kliknij prawym przyciskiem myszy Windows PowerShell i wybierz Uruchom jako administrator. Kliknij Tak jeśli zostaniesz o to poproszony przez Kontrola konta użytkownika.
  3. W oknie PowerShell wpisz następujące polecenie:
     Get-ChildItem FolderPath | Measure-Object -Property Length -sum
  4. W powyższym poleceniu zamień Ścieżkę foldera ze ścieżką katalogu, w którym zapisany jest folder. Na przykład, jeśli chcesz obliczyć rozmiar folderu pobierania znajdującego się w MI:\ drive, to pełne polecenie będzie wyglądać tak:
    Get-ChildItem E:\Download | Measure-Object -Property Length -sum
  5. Zwrot pokaże liczbę pozycji w folderze i jego rozmiar w bajtach. Musisz podzielić całkowitą sumę przez 1024 aby dostać rozmiar KB (kilobajty). Podziel to przez 1024 ponownie, aby uzyskać rozmiar MB (Megabajty) i tak dalej.

Alternatywnie możesz użyć właściwości .sum, aby pobrać całkowity rozmiar i podzielić go przez 1 milion lub miliard, aby przekonwertować go na megabajty lub gigabajty.

Na przykład, jeśli chcesz poznać wartość w gigabajtach (MB), wpisz następujące polecenie i naciśnij Wchodzić:

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

Podobnie wymień 1 MB z 1 GB aby pobrać rozmiar folderu w gigabajtach.

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

Jeśli chcesz określić rozmiar określonych typów plików w katalogu, możesz użyć symbolu wieloznacznego * a następnie typ rozszerzenia pliku. Pokaże tylko rozmiar pliku dla określonego typu pliku.

Na przykład, aby sprawdzić, ile miejsca zajmują obrazy w folderze, użyj następującego polecenia:

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

Dodanie symbolu wieloznacznego pozwala określić, czy określony typ pliku zajmuje najwięcej miejsca w folderze. Następnie możesz filtrować zawartość na podstawie rozszerzenia pliku i usuwać lub przenosić je, jeśli to konieczne.

Jak uzyskać rozmiar podfolderu za pomocą programu PowerShell

Powyższe polecenie obliczy tylko rozmiar głównego katalogu lub folderu. Aby obliczyć całkowity rozmiar plików w określonym katalogu i jego podkatalogach, musisz dodać -Rekurencja parametr do powyższego polecenia. Ponadto użyjemy parametru -force, aby uzyskać dostęp do plików ukrytych i systemowych.

Na przykład, aby uzyskać całkowity rozmiar katalogu C:\Users i jego podkatalogów, w tym ukrytych plików, polecenie PowerShell będzie wyglądać mniej więcej tak:

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

Dane wyjściowe w tym przypadku pokazują około 54 GB. jako całkowity rozmiar folderu c:\users. W powyższym poleceniu parametr -ErrorAction SilentlyContinue służy do pomijania wszelkich komunikatów o błędach, które mogą wystąpić podczas procesu.

Jak uzyskać rozmiar podfolderu w formacie tabeli za pomocą programu PowerShell

Jeśli chcesz poznać rozmiar wszystkich podfolderów indywidualnie, możesz uruchomić skrypt PowerShell, aby uzyskać graficzny widok wszystkich podfolderów i ich rozmiarów. Skrypt jest zwykle pomocny, jeśli masz duży katalog z wieloma podfolderami i musisz często nad nimi pracować.

Aby uruchomić ten skrypt, możesz użyć programu PowerShell ISE. Oto jak to zrobić:

  1. wciśnij Wygraj klucz i wpisz PowerShell ISE. Kliknij Windows PowerShell ISE z wyniku wyszukiwania.
  2. Następnie skopiuj i wklej następujące polecenie do konsoli programu PowerShell ISE. Pamiętaj, aby zmienić katalog z c:\ na preferowany katalog.
     $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. Następnie kliknij Uruchom skrypt lub naciśnij F5 i poczekaj na wykonanie skryptu. W zależności od rozmiaru folderu zobaczysz „Rozmiar podkatalogów" okno dialogowe z listą wszystkich podkatalogów wraz z ich rozmiarem.

Oprócz tego możesz użyć operatorów porównania PowerShell do filtrowania wyników. Na przykład, aby uzyskać rozmiar pliku dla folderów utworzonych między czerwcem 2023 r. a lipcem 2023 r., możesz użyć następującego polecenia:

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

W powyższym poleceniu "?" jest aliasem dla Gdzie-Obiekt polecenia cmdlet, -gt, -ORAZ, -To są operatorami porównania i Czas utworzenia jest warunkiem. Polecenie sprawdza, czy czas utworzenia plików w podkatalogu mieści się w określonym zakresie dat i wyświetla dane wyjściowe tylko wtedy, gdy warunek jest spełniony. Jeśli pojawi się błąd, upewnij się, że format daty i godziny w poleceniu jest zgodny z formatem systemu i spróbuj ponownie.

Uzyskaj rozmiar folderu i podfolderu za pomocą programu PowerShell

Eksplorator plików w systemie Windows może pomóc w obliczeniu rozmiaru dowolnego folderu i pliku. Jeśli jednak pracujesz z wieloma dużymi folderami lub w organizacji z setkami komputerów do zarządzania, użycie programu PowerShell może przyspieszyć wykonywanie zadań.

To powiedziawszy, jeśli wolisz rozwiązanie bardziej oparte na GUI, rozważ użycie narzędzia do analizy dysków. Narzędzia te mogą pomóc w wizualizacji struktury plików systemowych i wyświetlić raport szczegółowo opisujący zawartość zajmującą najwięcej miejsca w systemie.