GNU/Linux >> Linux の 問題 >  >> Linux

10 Linux DU コマンドの例 (ファイルとフォルダーのディスク使用サイズ)

Du は Disk Usage の略です。

Linux の du コマンドは、ディスクの使用状況をファイル サイズで要約するために使用されます。フォルダーで使用して、ディスクの合計使用量を取得できます。この記事では、du コマンドを効果的に使用する方法の例をいくつか紹介します。

ここに示す du の例はすべて、次の内容を含むディレクトリで実行されます:

$ ls
linuxKernel  redhat  testfile.txt  ubuntu

1.基本的な例

$ du -a
0	./redhat/rh7
4	./redhat
4	./testfile.txt
0	./linuxKernel
0	./ubuntu/ub10
4	./ubuntu
16	.

上記の例で -a フラグを使用して、すべてのファイルとディレクトリのディスク使用量を表示しました。 -a が使用されていない場合、一部のディスクを占有しているディレクトリのみがリストされるためです。例:

$ du
4	./redhat
4	./ubuntu
16	.

これで、du コマンドの使用方法に関する基本的なアイデアが得られましたが、私と同じように、出力の数字が何を意味するのかを理解するのは難しいと感じる人もいるでしょう??
次の例に移りましょう。オフ。

2. -h を使用して人間が読める形式で出力を表示します

$ du -ah
0	./redhat/rh7
4.0K	./redhat
4.0K	./testfile.txt
0	./linuxKernel
0	./ubuntu/ub10
4.0K	./ubuntu
16K	.

上記の例では、-h フラグを -a フラグと一緒に使用したことがわかります。 -h フラグは、人間が読める形式で出力を取得するために使用されます。上記の出力は、ディスク使用量が「K」で表示されているため、より理解しやすいことがわかります。

3. -c を使用して出力に総計を表示します

私が使用している例には、小さなディレクトリ構造があります。手動で計算することにより、ディレクトリの合計ディスク使用量を簡単に計算できます。しかし、リアルタイムのシナリオでは手動計算は実用的ではありません。そのため、出力で合計使用量を取得できるフラグが存在します。

$ du -ahc
0	./redhat/rh7
4.0K	./redhat
4.0K	./testfile.txt
0	./linuxKernel
0	./ubuntu/ub10
4.0K	./ubuntu
16K	.
16K	total

したがって、-c フラグを使用すると、出力で合計使用量を取得できることがわかります。

4. -s を使用して合計数のみを表示

概要の形式で合計サイズのみを取得する場合は、-s フラグを使用してください。

$ du -sh
7.3G	.

したがって、上記の出力には合計サイズのみが表示されていることがわかります。

5. 「–files0-from=-」を使用して stdin から入力ファイルをフィードします

外出先で「du」入力を提供したい状況が発生した場合、これは「–files0-from」フラグを介して可能です。

$ du -ah --files0-from=-
copy12K	copy
file12K	file
helloWorld12K	helloWorld
^C
$

標準入力からのファイル名の受け入れを開始するように「du」を示すために、値を「-」としてフラグ「–files0-from」に渡したことに注意してください。各ファイル名を入力したら、ctrl+D を 2 回押して、そのファイルの出力を生成します。

6. -0 を使用して null バイトで出力を終了します

改行なしでヌルバイトで終わる各出力を生成したい場合は、-0 フラグを使用してください。

$ du -am -0
0	./redhat/rh71	./redhat1	./testfile.txt0	./linuxKernel0	./ubuntu/ub101	./ubuntu1

したがって、各出力が 0 バイトで終了しているため、上記の出力は 1 行で生成されていることがわかります。

7. –block-size で出力のブロック サイズをカスタマイズ

ブロックサイズについて言えば、別の方法で出力する必要がある場合があります。例:

$ du -ac
0	./redhat/rh7
4	./redhat
4	./testfile.txt
0	./linuxKernel
0	./ubuntu/ub10
4	./ubuntu
16	.
16	total

上記の出力は、1024 バイト ブロックの数で表されます。ここで、出力を 2048 バイトのブロック数にする必要があるとします。この場合、フラグ「–block-size」を使用できます。

$ du -ahc --block-size=2048
0	./redhat/rh7
2	./redhat
2	./testfile.txt
0	./linuxKernel
0	./ubuntu/ub10
2	./ubuntu
8	.
8	total

したがって、上記の出力は 2048 バイト ブロックの数の形式であることがわかります。

8. -b を使用して出力をバイト単位で表示

出力をバイト単位で取得するには、-b フラグを使用できます。

$ du -achb
0	./redhat/rh7
4096	./redhat
3	./testfile.txt
0	./linuxKernel
0	./ubuntu/ub10
4096	./ubuntu
12291	.
12291	total

したがって、上記の出力はバイト単位であることがわかります。

9. –exclude を使用して特定の種類のファイルを除外する

.txt ファイルの統計を取得したくないとします。したがって、これらのタイプの要件には「–exclude」フラグがあります。

$ du -cbha --exclude="*.txt"
0	./redhat/rh7
4.0K	./redhat
0	./linuxKernel
0	./ubuntu/ub10
4.0K	./ubuntu
12K	.
12K	total

したがって、上記の出力では、テキスト ファイルのエントリが存在しないことがわかります。

10.変更時刻を表示し、表示スタイルをカスタマイズします

これは、–time および –time-style フラグによって実現できます。

$ du -cbha --time
0	2012-05-22 21:52	./redhat/rh7
4.0K	2012-05-22 21:52	./redhat
3	2012-06-18 19:23	./testfile.txt
0	2012-05-22 21:52	./linuxKernel
0	2012-05-22 21:52	./ubuntu/ub10
4.0K	2012-05-22 21:52	./ubuntu
13K	2012-06-18 19:23	.
13K	2012-06-18 19:23	total
$ du -cbha --time --time-style=iso
0	2012-05-22	./redhat/rh7
4.0K	2012-05-22	./redhat
3	2012-06-18	./testfile.txt
0	2012-05-22	./linuxKernel
0	2012-05-22	./ubuntu/ub10
4.0K	2012-05-22	./ubuntu
13K	2012-06-18	.
13K	2012-06-18	total

–time-style には、full-iso、long-iso、iso も使用できます。


Linux
  1. Linux Catコマンド:使用法と例

  2. Linux Sedコマンド:使用法と例

  3. Linux AWKコマンド–LinuxおよびUnixの使用構文の例

  1. Linuxコマンド-概要と例

  2. Linuxのディレクトリ/フォルダーごとに合計ファイルのディスク使用サイズを一覧表示する

  3. Linux での tee コマンドの例

  1. Linuxのfindコマンドの使用–例を使用した使用法

  2. Linux 時間コマンドの例

  3. Linux および Unix でファイルをコピーする方法10 cp コマンドの例