リスト内のファイルはどのくらいのディスク容量を消費しますか?

リスト内のファイルはどのくらいのディスク容量を消費しますか?

リスト内のファイルが使用するディスク容量を確認するには?バリエーションを探しています。

du -s *.sql

合計だけ見たいです。上記のコマンドは常にファイルごとに1行を表示します。

ベストアンサー1

du -c合計を取得し、最後の行tail(合計)のみを取得するようにパイプする場合:

du -c -- *.sql | tail -n 1

du自分で報告する方法はないようです。ただセットに含まれるファイルの総数。

これは--必須ではありませんが、スクリプトでこのコマンドを使用する場合は強くお勧めします。オプションの終わりを表示し、面白いファイル名を避けます。詳しくはこちらをご覧ください。"--"(二重ダッシュ) とはどういう意味ですか?


いくつかの技術的事項:

「隠し」ファイル*.sql(ドットで始まるファイル名)は含まれません。これは、globにはデフォルトで隠されたファイルが含まれていないためです。

この目的のために、*.sqlディレクトリには次duのものが含まれます。みんなこれらのディレクトリのファイルに再帰的にアクセスします。

zshを使用すると、除外ディレクトリを作成できます*.sql(^/)。または*.sql(D)隠しファイルが含まれています。詳しくはzsh glob修飾子をご覧ください。

この目的のために、*.sqlシンボリックリンクは、duリンクが指すターゲットのサイズではなく、リンク自体のサイズを計算する。du -Hリンク先のサイズを取得するために使用されます。

duGNUを含むほとんどの実装では、いかなる場合でもdu固有のファイルのディスク使用量のみを計算します。したがって、foo.sqlハードリンクbar.sql(またはシンボリックリンクが-H使用されている場合)の場合、ディスク使用量は一度だけ計算されます。

ハードリンクをサポートしていないファイルシステムにファイルをコピーしようとすると、混乱が発生する可能性があります。ほとんどの場合、ハードリンクファイルは2回コピーされるため、ターゲットシステムに表示されているよりも多くのディスク容量が必要になりますdu

GNU実装では、duこのオプションを使用して重複排除をスキップできます。-l

おすすめ記事