web-dev-qa-db-ja.com

ディレクトリサイズ計算用の無料のツール/スクリプト

すべてのサブディレクトリを含むディレクトリのサイズを計算する無料のコマンドラインツールまたはスクリプトを知っている人はいますか?

Windows 7と互換性があり、ハードリンクとジャンクションで動作し、一部のサブフォルダーへのアクセスが拒否された場合に適切に処理する必要があります(つまり、このような場合も継続します)。

何も見つからず、自分でツールを書こうと思っています。

更新:

ファイルサーバーに保存されている(多くの)移動ユーザープロファイルを分析するための何かを探しています。完璧なツールを使用すると、最大のプロファイルディレクトリやファイル数が最も多いディレクトリを簡単に見つけることができます。

5
Helge Klein

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
5
quinnr

/ lでrobocopyを使用すると、アクセスできないものを無視してそれが実行され、/ Bはbackuoモードで試行することもできます。これにより、他の方法ではアクセスできない可能性があります。

/ L ::リストのみ-ファイルをコピー、タイムスタンプ、または削除しないでください。

/ XJ :: eXcludeジャンクションポイント。 (通常、デフォルトで含まれています)。

「サブフォルダへのアクセスが拒否された場合に適切に対処する」という意味の具体的なものはありますか?

/編集-本質的にまったく新しい質問をしたので、他の答えを殺到します:

なぜWindows7で実行する必要があるのですか?サーバー上で実行します。

これがどのように使用されると思いますか? Crystal Reportsは、ファイルシステムをレポートソースとして使用でき、1つのレポートではサイズで、別のレポートではファイルの数でグループ化できます。歴史が必要ですか? RRDToolのようなものを使用して、親ディレクトリ内の1つまたは複数のホームディレクトリを保持するディレクトリ内のすべてのフォルダでdiruseを実行できます。そして、あなたは素敵なきれいなグラフを備えた素敵なきれいなウェブページを持っています。

インタラクティブに使用するために、私はWinDirStatが大好きですが、TreeSizeProが好きな人もいます。

これは、これを再配布可能にする必要性とどのように結びついていますか?他のIT管理者向けに管理製品を構築して販売しようとしていますか?それがあなたとあなたのスタッフのためだけであるならば、それは「再配布」ではありません。

3
mfinni

Cygwin (Windows用のPOSIXエミュレーションレイヤー)のすべてデフォルトのインストールには、 GNUコアユーティリティコレクションduユーティリティが含まれており、完全にハードです。 -リンクおよびジャンクションポイントを認識します。 Cygwin(したがってdu)はジャンクションポイントをソフトリンクとして扱うと思います。

2
Steven Monday

あなたは本当に見るべきです http://foldersize.codeplex.com/releases?ReleaseName=FolderSize.Win32.1.0.7. それは素晴らしいです!誰がどのスペースを噛んでいるかを簡単にグラフィカルに確認できます。

enter image description here

2
trent

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
1
Scott McKinney

サーバー障害の場合は少々低俗かもしれませんが、Tree Size Free( http://www.jam-software.com/treesize_free/ )は、特に試しているだけの場合は、それを非常にうまく実行します。一度だけ使用します。 Professionalバージョンには、継続的なメンテナンスに使用する多くの優れた機能があります。

0
Driftpeasant

WinDirStat をお勧めします。

今日、特定のディレクトリが消費するスペースの量を確認する必要があり、そのうちの1つがハードリンクを多用していることがわかりました(特定のファイルが合計で複数回考慮される可能性があります)。

WinDirStatがwinsxsディレクトリに対して14.9GBを示していることがわかります。これらの14.9GBは、du(前の回答を参照)がsizeとして返す量に等しくなります(15.620.679.650を(1024 * 1024 * 1024)で割ると、丸められます。 14,9)

WinDirStat

DU

0
Marged