ナスです。
昨年の夏に、Windows の du についての記事を書きました。(なぜか今まで書いた記事の中で一番アクセスが多いです。意外。)
nasrinjp1.hatenablog.com
PowerShell でちょっとしたスクリプトを書いてるパターンと、sysinternals のツールを使うパターンの 2 種類だと思ってましたが、日経 NETWORK 2017.01 号の p15 にワンライナーで du 相当のコマンドが紹介されていたので、実際にやってみました。しかも指定したサイズ以上のファイルをファイルサイズ順に並べ替えて表示できるのでいいですね。
AWS に、Windows Server 2016 を起動して、特に何も設定せずに試しています。
PS C:\Users\Administrator > $PSVersionTable.PSVersion Major Minor Build Revision ----- ----- ----- -------- 5 1 14393 576
C:\User 配下にテスト用のでかいファイルを作って、dir をかけた結果です。
Where-Object で 500 バイト以上のファイルだけを表示させてみました。
PS C:\Users\Administrator > Get-ChildItem -Path C:\Users -Recurse | Where-Object Length -ge 500 | Select-Object FullName, Length | Sort-Object Length -Descending FullName Length -------- ------ C:\Users\Administrator\testfile 10737418240 C:\Users\Administrator\Links\Downloads.lnk 978 C:\Users\Administrator\Desktop\EC2 Microsoft Windows Guide.website 554 C:\Users\Administrator\Desktop\EC2 Feedback.website 527 C:\Users\Administrator\Links\Desktop.lnk
これだけできれば、この記事の最初に紹介した du ツールはいらないですね。時々、フリーのツールをインストールすることが禁止されている環境がありますが、PowerShell ならさすがにつかってもいいと思いますので、いろいろ試してみてください。