ll
またはls -l
を使用して長いリストを表示すると、ファイルのバイトサイズを確認できることを知っています。しかし、そのディレクトリ内のファイルとその中のサブディレクトリなどを含むディレクトリ内のストレージの量を知りたいのですが、ファイルの数ではなく、それらのファイルが占めるストレージの量を知りたいです。
それで、特定のディレクトリにあるストレージの量を再帰的に知りたいですか?コマンドがある場合、それはバイト単位であると思います。
これを試してください:
du -s dir
または
du -sh dir
oSによって異なりますが、-h
サポートが必要です。
見る
man du
あなただけです:
du -sh /path/to/directory
どこ -s
はsummaryおよび-h
for人間が読める( 非標準 オプション)。
注意してくださいただし、ls
とは異なり、これはではありませんファイルサイズを表示しますが、ディスク使用量(つまり、 filesystem block-size)ですが、ファイルは小さい場合や大きい場合があるため、--apparent-size
オプション:
du -sh --apparent-size /path/to/directory
これは、必要に応じてネットワーク経由で転送されるサイズです。
実際、ファイルには「穴」があり(空のシェル)、ファイルシステムのブロックサイズよりも小さい場合や、ファイルシステムレベルで圧縮される場合などがあります。manページ 説明 これ。
Nicklaspoints out のように、ncdu
ディスク使用量アナライザーを使用することもできます。ディレクトリ内から起動すると、どのフォルダーやファイルがディスクスペースを使用しているかを、大きいものから小さいものの順に表示します。
この質問 も表示されます。
ディレクトリ内のすべての{サブ}フォルダサイズを知りたい場合は、du
の-d
または--max-depth
オプションも使用できます(引数:再帰的な制限)
例えば :
du -h /path/to/directory -d 1
のようなものが表示されます
4.0K /path/to/directory/folder1
16M /path/to/directory/folder2
2.4G /path/to/directory/folder3
68M /path/to/directory/folder4
8G /path/to/directory/folder5
PS:再帰的な制限として0
を入力することは、-s
オプションと同等です。これらの2つのコマンドは同じ結果になります(指定されたディレクトリの再帰的な人間が読めるサイズ)。
du -h /path/to/directory -d 0
du -sh /path/to/directory
すでに述べたdu
コマンドの代わりはncdu
です。これはターミナルで使用するための素晴らしいディスク使用量アナライザーです。最初にインストールする必要があるかもしれませんが、ほとんどのパッケージリポジトリで利用できます。
編集:出力形式については、次のスクリーンショットを参照してください http://dev.yorhel.nl/ncdu/scr
これにより、フォルダー(再帰的)やファイルなど、現在のディレクトリのサイズのリストが表示されます。
$ du -hs *
7.5M Applications
9.7M Desktop
85M Documents
16K Downloads
12G Google Drive
52G Library
342M Movies
8.3M Music
780M Pictures
8.5G Projects
8.0K Public
16K client1.txt
Unixでは、ディレクトリには名前とファイルシステムオブジェクトへの参照のみが含まれます(inodeは、ディレクトリ、ファイル、またはその他のエキゾチックなものを参照できます)。ファイルは、同じディレクトリ内の複数の名前で表示されるか、複数のディレクトリにリストされます。したがって、「ディレクトリと内部のファイルによって使用されるスペース」は、ファイルが「内部」ではないため、実際には意味がありません。
とは言っても、コマンドdu(1)
は、ディレクトリが使用する領域と、そこから到達可能なすべての領域を一覧表示します。du -s
は-h
GNU du
のような一部の実装は、「人間が読める」出力(つまり、キロバイト、メガバイト)を提供します。
Awkの「file-size.sh」を使用できます ベロアライブラリ :
ls -ARgo "$@" | awk '{q += $3} END {print q}'
私にとっては、OS X ElCapitánの深さとパスの場合、それは逆に働きました
du -h -d 1 /path/to/directory