サンプル集  >  PowerShell  >  指定したフォルダ配下の大容量ファイルリスト取得
指定したフォルダ配下の大容量ファイルリスト取得
2025/12/14

指定したフォルダ配下の大容量ファイルのリストを取得します。

◆環境
OS Windows 11 Home 25H2

基点となるフォルダパスを引数で受け取り、そのフォルダ配下のファイルで容量が大きい順に10個表示します。

LargeFileTop10.ps1
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
Param( $root_path )

Get-ChildItem $root_path -File -Recurse `
                         -ErrorAction SilentlyContinue |
Sort-Object Length -Descending |
Select-Object FullName,
              @{Name="SizeMB"; `
              Expression={[math]::Round($_.Length / 1MB, 2)}} |
Select-Object -First 10

実行してみます。

PS C:\work> .\LargeFileTop10.ps1 C:\work\
.\LargeFileTop10.ps1 : ファイル C:\work\LargeFileTop10.ps1 を読み込め
ません。ファイル C:\work\LargeFileTop10.ps1 はデジ
タル署名されていません。このスクリプトは現在のシステムでは実行できま せん。スクリプトの実行および実行ポリシーの設定の詳
細については、「about_Execution_Policies」(https://go.microsoft.com/f
wlink/?LinkID=135170) を参照してください。
発生場所 行:1 文字:1
+ .\LargeFileTop10.ps1 C:\work\
+ ~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : セキュリティ エラー: (: ) []、PSSecurit
yException
    + FullyQualifiedErrorId : UnauthorizedAccess

ポリシーを確認したところRemoteSignedでした。

PS C:\work> Get-ExecutionPolicy
RemoteSigned

Bypassのポリシーを指定して実行します。

PS C:\work> powershell.exe -ExecutionPolicy Bypass -File .\LargeFileT
op10.ps1 C:\work\

C:\work\RNTest.zip                 106.62
C:\work\Test64to32.zip              18.17
C:\work\wcharttest-1c635455.ipch    15.31
C:\work\VCDLLTest2022.pch           12.62
C:\work\ODBCTest.ncb                10.94
C:\work\RLJ012A020.pdf               8.29
C:\work\RLJ012A020.pdf               8.29
C:\work\updb_mysqld_slow.log.temp    6.43
C:\work\SQLSvTest2.ncb               5.42
C:\work\MultiLangTest.zip            4.43

期待通りに動作しました!

▲ PageTop  ■ Home


Copyright (C) 2025 ymlib.com