Mely mappák szorongatják a lemezmeghajtót? Ezt a Windows útmutatóból megtudhatja.
Ha meg szeretné vizsgálni, hogy mely mappák foglalják el a tárhelyet, ellenőrizheti a mappa méretét, hogy megállapítsa, mi szorongatja a meghajtót. A mappaméret ellenőrzése akkor is hasznos, ha nagy mappát kell áthelyeznie USB-meghajtóra vagy felhőtárhelyre. Ennek egyszerű módja a Windows rendszeren a Fájlkezelő használata és a mappa tulajdonságai párbeszédpanel megnyitása.
A File Explorer azonban lassú lehet egy nagy mappa méretének meghatározásában. És nem ideális, ha egy szervezet több számítógépén szeretne fájlokat és mappákat kezelni. Ennek orvoslására a PowerShell segítségével gyorsan kiszámíthatja a mappaméreteket Windows rendszeren.
Mappa méretének kiszámítása a PowerShell segítségével Windows rendszeren
A mappa méretének kiszámításához a két PowerShell-parancsmagot kell használnia, a Get-ChildItem és a Measure-Object parancsot, majd a Length tulajdonságot és a Sum paramétert.
A Get-ChildItem parancsmag lehetővé teszi információk lekérését egy megadott könyvtárból és annak alkönyvtáraiból. A Measure-Object parancsmag és a kapcsolódó tulajdonságok és paraméterek kiszámítják a Get-ChildItem (alias „cgi”) parancsmag által visszaadott elemek hossz tulajdonságának összegét.
Ha még nem ismeri a PowerShellt, érdemes elolvasni a magyarázó írásunkat nélkülözhetetlen PowerShell-parancsmagok hogy megértsük a PowerShell alapjait.
Most, hogy ismeri a PowerShell-parancsokat, íme, hogyan használhatja őket bármilyen mappaméret eléréséhez.
- megnyomni a Győzelem kulcs és típus powershell.
- Ezután kattintson a jobb gombbal Windows PowerShell és válassza ki Futtatás rendszergazdaként. Kattintson Igen ha kéri Felhasználói felület.
- A PowerShell ablakban írja be a következő parancsot:
Get-ChildItem FolderPath | Measure-Object -Property Length -sum
- A fenti parancsban cserélje ki FolderPath a könyvtár elérési útjával, ahová a mappát menti. Például, ha ki szeretné számítani a fájlban található Letöltés mappa méretét E:\ meghajtót, akkor a teljes parancs így fog kinézni:
Get-ChildItem E:\Download | Measure-Object -Property Length -sum
- A visszatérés megmutatja a mappában lévő elemek számát és a méretét bájtokban. A teljes összeget el kell osztania ezzel 1024 hogy beleférjen a méret KBs (Kilobyte). Oszd el vele 1024 újra, hogy a méret bekerüljön MBs (Megabájt) és így tovább.
Alternatív megoldásként használhatja a .sum tulajdonságot a teljes méret lekérésére, és 1 millióval vagy milliárddal elosztva megabájtokra vagy gigabájtokra konvertálhatja.
Például, ha szeretné tudni az értéket gigabájtban (MBs), írja be a következő parancsot, és nyomja meg a billentyűt Belép:
(gci E:\Download | measure Length -s).sum / 1Mb
Hasonlóképpen cserélje ki 1 Mb val vel 1 Gb a mappa méretének lekéréséhez gigabájtban.
(gci E:\Download | measure Length -s).sum / 1Gb
Ha meg akarja határozni a könyvtárban lévő fájlok bizonyos típusainak méretét, használhatja a helyettesítő karaktert * majd a fájlkiterjesztés típusa. Csak a megadott fájltípushoz tartozó fájlméretet mutatja.
Például, hogy megtudja, mennyi helyet foglalnak el a képek egy mappában, használja a következő parancsot:
(gci E:\download *.jpg | measure Length -s).sum / 1Mb
Helyettesítő karakter hozzáadása lehetővé teszi annak meghatározását, hogy egy adott fájltípus foglalja-e a legtöbb helyet a mappában. Ezután szűrheti a tartalmat a fájlkiterjesztés alapján, és szükség esetén törölheti vagy áthelyezheti azokat.
Hogyan szerezheti be az almappa méretét a PowerShell segítségével
A fenti parancs csak az elsődleges könyvtár vagy mappa méretét számítja ki. A megadott könyvtárban és alkönyvtáraiban lévő fájlok teljes méretének kiszámításához hozzá kell adnia a -Recurse paramétert a fenti parancshoz. Ezenkívül a -force paramétert használjuk a rejtett és rendszerfájlok eléréséhez.
Például a C:\Users könyvtár és alkönyvtárainak teljes méretéhez, beleértve a rejtett fájlokat is, a PowerShell parancs valahogy így néz ki:
((gci -force c:\Users -Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb)
A kimenet ebben az esetben kb. 54 GB-ot mutat. mint a c:\users mappa teljes mérete. A fenti parancsban az -ErrorAction SilentlyContinue paraméter a folyamat során esetlegesen előforduló hibaüzenetek letiltására szolgál.
Az almappa méretének lekérése táblázat formátumban a PowerShell segítségével
Ha külön-külön meg szeretné tudni az összes almappa méretét, futtathat egy PowerShell-szkriptet, hogy grafikus képet kapjon az összes almappáról és azok méretéről. A szkript általában akkor hasznos, ha nagy könyvtára van több almappával, és gyakran kell dolgoznia rajtuk.
A szkript futtatásához használhatja a PowerShell ISE-t. Íme, hogyan kell csinálni:
- megnyomni a Win kulcs és írja be PowerShell ISE. Kattintson Windows PowerShell ISE a keresési eredményből.
- Ezután másolja és illessze be a következő parancsot a PowerShell ISE konzolba. Ügyeljen arra, hogy a c:\ könyvtárat a kívánt könyvtárra változtassa.
$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" - Ezután kattintson Script futtatása vagy nyomja meg F5 és várja meg a szkript végrehajtását. A mappa méretétől függően egy "Alkönyvtárak mérete" párbeszédablak, amely felsorolja az összes alkönyvtárat a méretükkel együtt.
Ezen kívül a PowerShell összehasonlító operátorait is használhatja az eredmények szűrésére. Például a 2023 júniusa és 2023 júliusa között létrehozott mappák fájlméretének megállapításához használja a következő parancsot:
(gci -force E:\Download – Recurse -ErrorAction SilentlyContinue |? {$_.CreationTime -gt '01/23/23' -AND $_.CreationTime -lt '02/23/23'}| measure Length -s).sum / 1Gb
A fenti parancsban "?" álneve a Hol-Object cmdlet, -gt, -ÉS, -Ez összehasonlító operátorok, és Teremtés ideje egy feltétel. A parancs ellenőrzi, hogy az alkönyvtárban lévő fájlok CreationTime ideje a megadott dátumtartományba esik-e, és csak akkor jeleníti meg a kimenetet, ha a feltétel teljesül. Ha hibaüzenetet kap, győződjön meg arról, hogy a parancsban megadott dátum és idő formátuma megegyezik a rendszer formátumával, majd próbálja újra.
Szerezze meg a mappa és az almappa méretét a PowerShell segítségével
A Windows File Explorer segítségével bármilyen mappa és fájl méretét kiszámíthatja. Ha azonban több nagy mappával dolgozik, vagy olyan szervezetben dolgozik, ahol több száz számítógépet kell kezelni, a PowerShell segítségével gyorsabban végezheti el a dolgokat.
Ennek ellenére, ha inkább GUI-alapú megoldást szeretne, fontolja meg egy lemezelemző eszköz használatát. Ezek az eszközök segíthetnek megjeleníteni a rendszer fájlszerkezetét, és jelentést mutatnak be, amely részletezi a rendszer legtöbb területét elfoglaló tartalmat.