Jak uzyskać rozmiar folderu za pomocą programu PowerShell w systemie Windows 11/10
Zwykle na komputerze z systemem Windows rozmiar elementu lub folderu można sprawdzić, klikając element lub folder prawym przyciskiem myszy, a następnie wybierając opcję Właściwości z menu kontekstowego. W tym poście pokażemy, jak sprawdzić lub uzyskać rozmiar folderu za pomocą programu PowerShell w systemie Windows 11/10.
Przypadek użycia, w którym możesz chcieć użyć programu PowerShell zamiast konwencjonalnego sposobu uzyskiwania folderu, to sytuacja, w której rozmiar elementu lub folderu jest znacznie większy — na przykład większy niż 100 GB. W takim przypadku użycie konwencjonalnego sposobu może trochę potrwać, zanim okno Właściwości folderu w końcu zapełni rozmiar elementu — co więcej, to, co jest pokazane, może nie być rzeczywistym rozmiarem folderu.
Jak uzyskać rozmiar folderu za pomocą programu PowerShell w systemie Windows 11/10
Z tego czy innego powodu możesz potrzebować rozmiaru folderu — na przykład, aby oszacować czas lub czas potrzebny na przeniesienie folderu (do innej lokalizacji na dysku lokalnym, dysku zewnętrznym lub w chmurze) lub, jeśli znacznie duży folder, aby po prostu go usunąć, aby zwolnić miejsce na dysku twardym — możesz natychmiast uzyskać rozmiar folderu/katalogu za pomocą PowerShell. Omówimy ten temat w następujących podtytułach.
- Polecenia PowerShell, aby uzyskać rozmiar folderu
- Uzyskaj rozmiar folderu w bajtach, MB i GB
- Uzyskaj rozmiar folderu w systemie dziesiętnym
- Uzyskaj rozmiar określonych elementów typu pliku
- Uzyskaj rozmiary folderów i podfolderów
- Uzyskaj rozmiary folderów i podfolderów za pomocą filtra czasu
- Uzyskaj wszystkie rozmiary folderów podkatalogów za pomocą skryptu programu PowerShell
1] Polecenia PowerShell, aby uzyskać rozmiar folderu
Poniżej przedstawiono 2 podstawowe polecenia cmdlet programu PowerShell, których można używać z przełącznikami i parametrami w celu filtrowania wyników zgodnie z wymaganiami w celu uzyskania rozmiaru folderu.
- Get-ChildItem (alias: GCI) — to polecenie pobiera informacje z jednego lub określonych katalogów, w tym z podkatalogów — puste katalogi nie są wyświetlane ani pokazywane.
- Measure-Object (alias: Measure) — to polecenie oblicza różne właściwości określonego katalogu, w tym jego rozmiar.
Alias to alternatywna nazwa polecenia, dzięki czemu nie trzeba za każdym razem wpisywać całego polecenia.
2] Uzyskaj rozmiar folderu w bajtach, MB i GB
Rozmiar folderu w bajtach :
Get-ChildItem PathToFolder | Measure-Object -Property Length -sum
Rozmiar folderu w MB :
(gci PathToFolder | measure Length -s).sum / 1Mb
Rozmiar folderu w GB :
(gci PathToFolder | measure Length -s).sum / 1Gb
Pole „Suma” wyświetla rozmiar folderu w bajtach, MB i GB, zależnie od przypadku.
3] Uzyskaj rozmiar folderu w systemie dziesiętnym
Dane wyjściowe dotyczące rozmiaru folderu w MB i GB są niejednoznaczne do zrozumienia na pierwszy rzut oka, ponieważ rozmiar jest w wielu miejscach po przecinku. Możesz więc uruchomić poniższe polecenie, aby zaokrąglić wynik w postaci dziesiętnej. Zastąp „ X ” liczbą miejsc dziesiętnych, do których chcesz zaokrąglić wynik, i w razie potrzeby podaj GB lub MB.
"{0:NX} GB"-f ((gci PathToFolder | measure Length -s).sum / 1Gb)
4] Uzyskaj rozmiar określonych elementów typu pliku
Jeśli chcesz uzyskać rozmiar wszystkich elementów w folderze o tym samym typie pliku / rozszerzeniu, uruchom poniższe polecenie. Odpowiednio zastąp symbol zastępczy FileType/Extension.
(gci PathToFolder *.FileType/Extension | measure Length -s).sum / 1Gb
5] Uzyskaj rozmiary folderów i podfolderów
Aby uzyskać rozmiary folderów i podfolderów (w tym elementów w środku), musisz użyć parametru -Recurse
używanego w domysłach z -ErrorAction SilentlyContinue
parametrem, aby ominąć błędy dostępu do katalogu, takie jak Odmowa uprawnień itp.
Aby uzyskać rozmiar rodzica, a także podkatalogów, możesz uruchomić jedno z poniższych poleceń.
(gci PathToFolder –Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb
"{0:NX} GB"-f ((gci –force PathToFolder –Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb)
To polecenie cmdlet będzie również zawierać rozmiary wszelkich ukrytych elementów.
6] Uzyskaj rozmiary folderów i podfolderów z filtrem czasu
Możesz uzyskać rozmiar folderów nadrzędnych i podrzędnych, a także zastosować filtry, aby znaleźć rozmiar elementów utworzonych w określonym dniu, określonym miesiącu lub określonym roku. Możesz to zdefiniować, określając datę początkową i końcową, które są odpowiednio zdefiniowane przez parametry -gt
(większy niż) i -lt
(mniejszy niż). Format dat to MM/DD/RR.
Aby uzyskać rozmiar folderu z podfolderami utworzonymi w określonym okresie, uruchom poniższe polecenie. Odpowiednio zastąp symbol zastępczy MM/DD/RR.
(gci -force PathToFolder –Recurse -ErrorAction SilentlyContinue |? {$_.CreationTime -gt ‘MM/DD/YY’ -AND $_.CreationTime -lt ‘MM/DD/YY’}| measure Length -s).sum / 1Gb
Możesz także zastosować te filtry za pomocą poleceń podanych wcześniej, aby uzyskać rozmiary folderów tylko dla folderów nadrzędnych.
7] Uzyskaj wszystkie rozmiary folderów podkatalogów za pomocą skryptu PowerShell
Aby jeszcze bardziej skomplikować sprawę, załóżmy, że musisz uzyskać rozmiar każdego podkatalogu w folderze. Można to również osiągnąć za pomocą PowerShell. Oczywiście, aby uzyskać wszystkie rozmiary folderów podkatalogów, w tym rozmiar elementów w podkatalogach i przedstawić je w schludnym, tabelarycznym formacie, możesz utworzyć i uruchomić skrypt PowerShell, korzystając z poniższego kodu.
$targetfolder='DriveLetter:\'
$dataColl = @()
gci -force $targetfolder -ErrorAction SilentlyContinue |? { $_ -is [io.directoryinfo] } | % {
$len = 0
gci -recurse -force $_.fullname -ErrorAction SilentlyContinue | % { $len += $_.length }
$foldername = $_.fullname
$foldersize= '{0:N2}' -f ($len / 1Gb)
$dataObject = New-Object PSObject
Add-Member -inputObject $dataObject -memberType NoteProperty -name “foldername” -value $foldername
Add-Member -inputObject $dataObject -memberType NoteProperty -name “foldersizeGb” -value $foldersize
$dataColl += $dataObject
}
$dataColl | Out-GridView -Title “Size of all subdirectories in DriveLetter drive”
Zastąp odpowiednio symbol zastępczy DriveLetter w powyższym kodzie i upewnij się, że włączone jest wykonywanie skryptów PowerShell.
Otóż to!
Czy istnieje sposób, aby zobaczyć rozmiar folderu w systemie Windows?
Konwencjonalnym sposobem sprawdzenia rozmiaru folderu jest otwarcie Eksploratora plików i kliknięcie prawym przyciskiem myszy pliku, folderu lub dysku, którego rozmiar chcesz zobaczyć. Z wyświetlonego menu wybierz Właściwości, a zobaczysz całkowity rozmiar pliku/dysku. Niekonwencjonalnym sposobem wykonania tego samego zadania jest użycie PowerShell, jak pokazaliśmy w tym poście powyżej.
Co to jest polecenie DOS, aby wyświetlić listę folderów i rozmiarów?
Polecenie dir
wyświetla informacje o plikach i katalogach oraz o dostępnej przestrzeni dyskowej. Domyślnie polecenie wyświetla nazwę, rozmiar i czas ostatniej modyfikacji każdego pliku w bieżącym katalogu.
Dodaj komentarz