Linux では、du の正式名は「ディスク使用量」です。ディレクトリまたはファイルが占有しているディスク容量をカウントするコマンドです。構文は「du [オプション] [ディレクトリまたはファイル名]」です。 」。 du コマンドは、1. サイズを読みやすい単位で表示できる「-h」、2. ディレクトリの合計サイズを表示できる「-s」、3. 「-」のさまざまなオプションをサポートしています。 d」など。
#このチュートリアルの動作環境: linux5.9.8 システム、Dell G3 コンピューター。
linux du コマンド
du は、Linux で最もよく使われるコマンドの 1 つであるディスク使用量の略語です。du は、統計ディレクトリまたはfile ディスク領域を占有するコマンド
du コマンドの形式は次のとおりです。
du [选项] [目录或文件名]
一般的に使用されるオプションは次のとおりです。
- a: ディレクトリ内のすべてのファイルとフォルダーのサイズを表示します。
すべてのディレクトリとファイル サイズの表示
次の例は、ディレクトリ内のすべてのディレクトリとファイルのサイズを示しています。デフォルトの単位は Kb です。
[root@ecs-centos-7 tt]# du -a temp/ 4 temp/suba.txt 4 temp/test/abc.txt 4 temp/test/ha/ha.txt 8 temp/test/ha 16 temp/test 4 temp/time.txt 28 temp/
du temp/
を実行すると、ディレクトリのサイズのみが表示されます (例:[root@ecs-centos-7 tt]# du temp 8 temp/test/ha 16 temp/test 28 temp
わかりやすく表示##) #デフォルトの表示 サイズには単位すらなく単一の数字しか含まれていないため、一見すると少し混乱してしまいます。 -h オプションを使用すると、人間が判読できる方法でサイズを表示できます。このオプションは、最も一般的に使用される [root@ecs-centos-7 tt]# du -b temp/
4117 temp/test/ha
8218 temp/test
12326 temp/
[root@ecs-centos-7 tt]# du -h temp/
8.0K temp/test/ha
16K temp/test
28K temp/
[root@ecs-centos-7 tt]# du --si temp/
8.2k temp/test/ha
17k temp/test
29k temp/
temp/test/ha
-h オプションで計算されたディレクトリのサイズは 8.0K、--si オプションで計算されたサイズは 8.2K
-h と、 --si オプションは、ディレクトリとファイルのサイズに応じて自動的に調整されます。
ディレクトリの合計サイズを知るだけで十分な場合があります。サブディレクトリとサブディレクトリ内のファイルのサイズを知る必要はありません。 -s オプションを使用してディレクトリの合計サイズを取得できます。[root@ecs-centos-7 tt]# du -sh .
72K .
[root@ecs-centos-7 tt]# du -sh temp/
28K temp/
#ディレクトリの合計サイズは、-c オプションを使用して取得することもできますが、最初にサブディレクトリのサイズが表示され、最後の行に合計サイズが表示されます。以下の例の最後の行
total文字列の前の 28K は、temp/ ディレクトリの合計サイズを示します。
[root@ecs-centos-7 tt]# du -ch temp/ 8.0K temp/test/ha 16K temp/test 28K temp/ 28K total
ディレクトリの深さを指定します。
ディレクトリが多数ある場合は、 1 つのディレクトリ サブディレクトリ。指定したレベル数でディレクトリのサイズのみを表示したい場合は、-d オプションを使用して、次のように temp/ のサブディレクトリ構造を実現できます。
ディレクトリの深さを指定します[root@ecs-centos-7 tt]# tree -d temp/ temp/ └── test └── ha 2 directories
du -d 0 temp/
: 現在のディレクトリの合計サイズである第 0 レベルのディレクトリを表示します。これは -s と同等です。オプションdu -d 1 temp/: 第 1 レベルのディレクトリ、つまり temp/test ディレクトリの合計サイズを表示します。
du - -max- Depth=2 temp/: 第 2 レベルのディレクトリ、つまり temp/ を表示します。 test/ha ディレクトリの合計サイズ
最新の変更時刻を表示します
[root@ecs-centos-7 tt]# du -d 0 temp/ 28 temp/ [root@ecs-centos-7 tt]# du -d 1 temp/ 16 temp/test 28 temp/ [root@ecs-centos-7 tt]# du --max-depth=2 temp/ 8 temp/test/ha 16 temp/test 28 temp/
より細かい粒度で表示したい場合は、--を使用できます。 time-syle=STYLE オプションで時刻の出力形式を指定します。STYLE は日付の形式化された出力文字列を表し、date
コマンドの形式化された出力の形式は同じです例 1: UTC 時間での秒数を表示します (1970 年 1 月 1 日から現在までの秒数)[root@ecs-centos-7 tt]# du --time temp 8 2020-07-21 20:11 temp/test/ha 16 2020-07-21 20:11 temp/test 28 2020-07-21 20:13 temp
例 2: 完全な年、月、日、時、分を表示します。 Second
[root@ecs-centos-7 tt]# du --time --time-style="+%s" temp/ 8 1595333498 temp/test/ha 16 1595333514 temp/test 28 1595333582 temp/
サイズでフィルタリング
#表示された結果から、指定したサイズのディレクトリとファイルをフィルタリングします
[root@ecs-centos-7 tt]# du --time --time-style="+%F %T" temp/ 8 2020-07-21 20:11:38 temp/test/ha 16 2020-07-21 20:11:54 temp/test 28 2020-07-21 20:13:02 temp/
上記の例では、 4118 バイト未満のディレクトリはフィルタリングされます。
ディレクトリ名またはファイル名でフィルタリングします。1 つのディレクトリにサブディレクトリが多すぎる場合は、サブディレクトリに基づいてフィルタリングできます。 name または、ファイル名が指定されたパターン文字列と一致するため、一致するディレクトリとファイルがフィルタリングされます。
[root@ecs-centos-7 tt]# du -b temp/ 4117 temp/test/ha 8218 temp/test 12326 temp/ [root@ecs-centos-7 tt]# du -b -t 4118 temp/ 8218 temp/test 12326 temp/
上記の例では、フィルタリングされたパターン文字列は次のとおりです: *a*
これは、ディレクトリ名またはファイル名に文字
a が含まれるディレクトリまたはファイルを除外することを意味します。この例では、最初の 4 行のディレクトリまたはファイル名にはすべて文字 a
が含まれています。失われた
ディスクを埋めるファイルは何ですか
開発者がよく遭遇する問題は、ディスクがいっぱいであることです。今度は、du と sort を組み合わせて使用できます。「犯人」を見つけます
[root@ecs-centos-7 tt]# du -sh temp/* | sort -hr 10M temp/clpay.tar 16K temp/test 4.0K temp/time.txt 4.0K temp/lnsuba
[root@ecs-centos-7 tt]# du -ah temp/* | sort -hr 10M temp/clpay.tar 16K temp/test 8.0K temp/test/ha 4.0K temp/time.txt 4.0K temp/test/ha/ha.txt 4.0K temp/test/abc.txt 4.0K temp/lnsuba
[root@ecs-centos-7 tt]# du -ah temp/* | sort -hr | head -n 3 10M temp/clpay.tar 16K temp/test 8.0K temp/test/ha
相关推荐:《Linux视频教程》
以上がLinux duとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。