Které složky zatěžují váš disk? Zjistěte to pomocí tohoto průvodce Windows.

Chcete-li prozkoumat, které složky zabírají váš úložný prostor, můžete zkontrolovat velikost složky a určit, co zatěžuje váš disk. Kontrola velikosti složky je také užitečná, pokud potřebujete přesunout velkou složku na USB disk nebo cloudové úložiště. Snadný způsob, jak toho dosáhnout v systému Windows, je použít Průzkumník souborů a otevřít dialogové okno Vlastnosti složky.

Průzkumník souborů však může být pomalý při určování velikosti velké složky. A není ideální, pokud chcete spravovat soubory a složky na více počítačích v organizaci. Chcete-li to napravit, můžete použít PowerShell k rychlému výpočtu velikosti složek v systému Windows.

Jak vypočítat velikost složky pomocí PowerShellu v systému Windows

Chcete-li vypočítat velikost složky, budete muset použít dvě rutiny prostředí PowerShell, Get-ChildItem a Measure-Object, následované vlastností Length a parametrem Sum.

Rutina Get-ChildItem vám umožňuje načíst informace ze zadaného adresáře a jeho podadresářů. Rutina Measure-Object a související vlastnosti a parametry vypočítají součet vlastnosti length pro položky vrácené rutinou Get-ChildItem (také znám jako 'cgi').

instagram viewer

Pokud jste v PowerShellu noví, možná si budete chtít přečíst náš vysvětlující článek základní rutiny PowerShell abyste porozuměli základům PowerShellu.

Nyní, když jste obeznámeni s příkazy PowerShellu, zde je návod, jak je použít k získání libovolné velikosti složky.

  1. zmáčkni Vyhrát klíč a typ powershell.
  2. Dále klikněte pravým tlačítkem na Windows PowerShell a vyberte Spustit jako administrátor. Klikněte Ano pokud k tomu budete vyzváni Kontrola uživatelského účtu.
  3. V okně PowerShell zadejte následující příkaz:
     Get-ChildItem FolderPath | Measure-Object -Property Length -sum
  4. Ve výše uvedeném příkazu nahradit Cesta ke složce s cestou k adresáři, kde je vaše složka uložena. Například, pokud chcete vypočítat velikost složky Download umístěné v E:\ drive, pak celý příkaz bude vypadat takto:
    Get-ChildItem E:\Download | Measure-Object -Property Length -sum
  5. Návrat zobrazí počet položek ve složce a její velikost v bajtech. Budete muset vydělit celkovou částku 1024 dostat velikost KB (Kilobajty). Rozdělte to podle 1024 znovu, abyste dostali velikost MB (megabajty) a tak dále.

Alternativně můžete použít vlastnost .sum k načtení celkové velikosti a vydělit ji 1 milionem nebo miliardou, abyste ji převedli na megabajty nebo gigabajty.

Pokud například chcete znát hodnotu v gigabajtech (MB), zadejte následující příkaz a stiskněte Vstupte:

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

Podobně vyměňte 1 Mb s 1Gb pro načtení velikosti složky v gigabajtech.

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

Pokud chcete určit velikost konkrétních typů souborů v adresáři, můžete použít zástupný znak * následovaný typem přípony souboru. Zobrazí se pouze velikost souboru pro zadaný typ souboru.

Chcete-li například zjistit, kolik místa zabírají obrázky ve složce, použijte následující příkaz:

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

Přidáním zástupného znaku můžete určit, zda určitý typ souboru zabírá ve složce nejvíce místa. Obsah pak můžete filtrovat na základě přípony souboru a v případě potřeby je odstranit nebo přesunout.

Jak získat velikost podsložky pomocí PowerShellu

Výše uvedený příkaz vypočítá pouze velikost vašeho primárního adresáře nebo složky. Chcete-li vypočítat celkovou velikost souborů v zadaném adresáři a jeho podadresářích, budete muset přidat -Rekurze parametr k výše uvedenému příkazu. Kromě toho použijeme parametr -force pro přístup ke skrytým a systémovým souborům.

Chcete-li například získat celkovou velikost vašeho adresáře C:\Users a jeho podadresářů, včetně skrytých souborů, bude příkaz PowerShell vypadat nějak takto:

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

Výstup v tomto případě ukazuje cca 54 GB. jako celková velikost složky c:\users. Ve výše uvedeném příkazu se parametr -ErrorAction SilentlyContinue používá k potlačení všech chybových zpráv, které se mohou během procesu objevit.

Jak získat velikost podsložky ve formátu tabulky pomocí prostředí PowerShell

Pokud chcete znát velikost všech podsložek jednotlivě, můžete spustit skript PowerShellu a získat grafický pohled na všechny podsložky a jejich velikosti. Skript je obvykle užitečný, pokud máte velký adresář s více podsložkami a potřebujete s nimi často pracovat.

Ke spuštění tohoto skriptu můžete použít PowerShell ISE. Jak na to:

  1. zmáčkni Win klíč a typ PowerShell ISE. Klikněte na Windows PowerShell ISE z výsledku vyhledávání.
  2. Dále zkopírujte a vložte následující příkaz do konzoly PowerShell ISE. Ujistěte se, že jste změnili adresář z c:\ na preferovaný adresář.
     $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. Dále klikněte Spusťte skript nebo stiskněte F5 a počkejte, až se skript spustí. V závislosti na velikosti složky se zobrazí "Velikost podadresářů" dialog se seznamem všech podadresářů s jejich velikostí.

Kromě toho můžete k filtrování výsledků použít operátory porovnání PowerShellu. Chcete-li například získat velikost souboru pro složky vytvořené mezi červnem 2023 a červencem 2023, můžete použít následující příkaz:

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

Ve výše uvedeném příkazu "?" je alias pro Kde-Objekt cmdlet, -gt, -A, -To jsou srovnávací operátory a Čas vytvoření je podmínkou. Příkaz zkontroluje, zda CreationTime souborů v podadresáři spadá do zadaného rozsahu dat a zobrazí výstup pouze v případě, že je podmínka splněna. Pokud se zobrazí chyba, ujistěte se, že formát data a času v příkazu odpovídá formátu systému, a zkuste to znovu.

Získejte velikost složky a podsložky pomocí prostředí PowerShell

Průzkumník souborů v systému Windows vám může pomoci vypočítat velikost libovolné složky a souboru. Pokud však pracujete s více velkými složkami nebo v organizaci se stovkami počítačů, které je třeba spravovat, může vám PowerShell pomoci dělat věci rychleji.

To znamená, že pokud dáváte přednost řešení více založeném na GUI, zvažte použití nástroje pro analýzu disku. Tyto nástroje vám mohou pomoci vizualizovat strukturu souborů systému a zobrazit zprávu s podrobnostmi o obsahu zabírajícím většinu místa ve vašem systému.