すべてのサブディレクトリを含むディレクトリのサイズを計算する無料のコマンドラインツールまたはスクリプトを知っている人はいますか?
Windows 7と互換性があり、ハードリンクとジャンクションで動作し、一部のサブフォルダーへのアクセスが拒否された場合に適切に処理する必要があります(つまり、このような場合も継続します)。
何も見つからず、自分でツールを書こうと思っています。
更新:
ファイルサーバーに保存されている(多くの)移動ユーザープロファイルを分析するための何かを探しています。完璧なツールを使用すると、最大のプロファイルディレクトリやファイル数が最も多いディレクトリを簡単に見つけることができます。
Du bySysinternalsはあなたが探しているものかもしれません。これはMicrosoftから無料であり、基本的には* ixduの初歩的なバージョンです。ファイルが存在しないことを報告することにより、ジャンクションと拒否されたアクセス許可を処理します。
http://technet.Microsoft.com/en-us/sysinternals/bb896651
Du v1.34 - report directory disk usage
Copyright (C) 2005-2009 Mark Russinovich
Sysinternals - www.sysinternals.com
usage: du [[-v] [-l <levels>] | [-n]] [-q] <directory>
-l Specify subdirectory depth of information (default is all levels)
-n Do not recurse.
-q Quiet (no banner).
-u Count only unique file occurences.
-v Show size (in KB) of intermediate directories.
c:\sysinternals>du c:\sysinternals
Du v1.34 - report directory disk usage
Copyright (C) 2005-2009 Mark Russinovich
Sysinternals - www.sysinternals.com
Files: 101
Directories: 0
Size: 32,798,999 bytes
Size on disk: 32,798,999 bytes
/ lでrobocopyを使用すると、アクセスできないものを無視してそれが実行され、/ Bはbackuoモードで試行することもできます。これにより、他の方法ではアクセスできない可能性があります。
/ L ::リストのみ-ファイルをコピー、タイムスタンプ、または削除しないでください。
/ XJ :: eXcludeジャンクションポイント。 (通常、デフォルトで含まれています)。
「サブフォルダへのアクセスが拒否された場合に適切に対処する」という意味の具体的なものはありますか?
/編集-本質的にまったく新しい質問をしたので、他の答えを殺到します:
なぜWindows7で実行する必要があるのですか?サーバー上で実行します。
これがどのように使用されると思いますか? Crystal Reportsは、ファイルシステムをレポートソースとして使用でき、1つのレポートではサイズで、別のレポートではファイルの数でグループ化できます。歴史が必要ですか? RRDToolのようなものを使用して、親ディレクトリ内の1つまたは複数のホームディレクトリを保持するディレクトリ内のすべてのフォルダでdiruseを実行できます。そして、あなたは素敵なきれいなグラフを備えた素敵なきれいなウェブページを持っています。
インタラクティブに使用するために、私はWinDirStatが大好きですが、TreeSizeProが好きな人もいます。
これは、これを再配布可能にする必要性とどのように結びついていますか?他のIT管理者向けに管理製品を構築して販売しようとしていますか?それがあなたとあなたのスタッフのためだけであるならば、それは「再配布」ではありません。
Cygwin (Windows用のPOSIXエミュレーションレイヤー)のすべてデフォルトのインストールには、 GNUコアユーティリティコレクション のdu
ユーティリティが含まれており、完全にハードです。 -リンクおよびジャンクションポイントを認識します。 Cygwin(したがってdu
)はジャンクションポイントをソフトリンクとして扱うと思います。
あなたは本当に見るべきです http://foldersize.codeplex.com/releases?ReleaseName=FolderSize.Win32.1.0.7. それは素晴らしいです!誰がどのスペースを噛んでいるかを簡単にグラフィカルに確認できます。
Microsoftツールdiruse
を調べましたか?それはあなたが探していることを正確に行うコマンドラインツールです。これはWindows2000および2003のサーバーツールの一部ですが、引き続きダウンロードできます: Microsoft Diruse TechNetの記事 。
私がよくわからないのは、ハードリンクとジャンクションポイントをどのように処理するかだけです。試してみる価値があるかもしれません。
TechNetの記事の例:
diruse /* /m \\shared\data
Size (mb) Files Directory
248.60 3739 SUB-TOTAL: \\SHARED\DATA\Admin
31.27 36 SUB-TOTAL: \\SHARED\DATA\Common
1448.14 23654 SUB-TOTAL: \\SHARED\DATA\ConsultServ
107.64 750 SUB-TOTAL: \\SHARED\DATA\CorpServ
1053.28 6145 SUB-TOTAL: \\SHARED\DATA\Design
147.11 258 SUB-TOTAL: \\SHARED\DATA\Engrg
70.56 745 SUB-TOTAL: \\SHARED\DATA\Finance
18.78 1188 SUB-TOTAL: \\SHARED\DATA\Hardware
12.18 50 SUB-TOTAL: \\SHARED\DATA\HR
2.22 23 SUB-TOTAL: \\SHARED\DATA\InfoTech
5.44 46 SUB-TOTAL: \\SHARED\DATA\Legal
18.53 56 SUB-TOTAL: \\SHARED\DATA\ProdDev
470.43 2016 SUB-TOTAL: \\SHARED\DATA\ProdMktg
107.92 1445 SUB-TOTAL: \\SHARED\DATA\Research
31.10 43 SUB-TOTAL: \\SHARED\DATA\Sales
9.98 14 SUB-TOTAL: \\SHARED\DATA\TechSupp
114.82 1269 SUB-TOTAL: \\SHARED\DATA\Training
3898.00 41477 TOTAL
サーバー障害の場合は少々低俗かもしれませんが、Tree Size Free( http://www.jam-software.com/treesize_free/ )は、特に試しているだけの場合は、それを非常にうまく実行します。一度だけ使用します。 Professionalバージョンには、継続的なメンテナンスに使用する多くの優れた機能があります。
WinDirStat をお勧めします。
今日、特定のディレクトリが消費するスペースの量を確認する必要があり、そのうちの1つがハードリンクを多用していることがわかりました(特定のファイルが合計で複数回考慮される可能性があります)。
WinDirStatがwinsxsディレクトリに対して14.9GBを示していることがわかります。これらの14.9GBは、du
(前の回答を参照)がsize
として返す量に等しくなります(15.620.679.650を(1024 * 1024 * 1024)で割ると、丸められます。 14,9)