1. 概要

ディレクトリとそのすべてのサブディレクトリ内のすべてのファイルの合計サイズを調べたい場合があります。 これを行う簡単な方法の1つは、duコマンドを使用することです。

この短いチュートリアルでは、duを使用してディレクトリ内のファイルの合計サイズを計算する方法を見ていきます。

2. ディレクトリサイズの検索

次のディレクトリがあるとしましょう。

$ ls
Zoom.pkg			jdk-15.0.2_osx-x64_bin.dmg
etc				pdfs
googlechrome.dmg		photos

このディレクトリ内およびその下のすべてのファイルの合計サイズを取得するには、duを使用できます。

$ du -s
1278490188    .

-s 引数は、指定されたディレクトリに使用されるすべてのスペースの要約を提供します。 -h を追加して、(バイトではなく)わかりやすい数値にすることもできます。

$ du -sh
1.2G	.

3. ファイルの除外

du のほとんどのバージョンでは、特定のファイルを無視するように指示できます。 –excludedu コマンドにシェルパターンとともに追加して、すべての.dmgファイルを無視してみましょう。

$ du -sh --exclude='*.dmg'
466M	.

これは、 .dmg ファイルを除いた、ダウンロードフォルダー内のファイルとサブディレクトリによって使用されるスペースの概要です。 一部のシステムでは、ignoreコマンドは -I 引数の後に、次のパターンが続きます。

% du -sh -I "*.dmg"
466M	.

4. 大きなファイルまたはディレクトリの検索

これで、ファイルが占めるスペースの量がわかりました。 次に、多くのスペースを占有している特定のファイルまたはディレクトリを見つけましょう。 コマンドに-d1 を追加すると、特定の深さのディレクトリサイズを計算できます

$ du -d 1 -h
662M	./etc
 12M	./pdfs
231M	./photos
1.2G	.

-s 引数を取り出し、 -d 引数に置き換えて、結果を取得しました。 -d 引数を使用すると、どのディレクトリが多くのスペースを使用しているかを見つけることができます。 この場合、 etc/が主な犯罪者のようです。

さらに深く掘り下げるには、 -d2または-d3 などを使用して、ファイルを複数のレベルの深さで表示できます。 または、 cd を特定のディレクトリに移動し、 du コマンドを再度実行して、ディレクトリ構造の下位にある最大のサブディレクトリまたはファイルを見つけることもできます。

5. 結論

この記事では、ディレクトリ内のすべてのファイルの合計サイズを見つける簡単な方法について説明しました。

また、どのサブディレクトリがすべてのスペースを占めているかを見つける方法も学びました。