次のコマンドを使用してdu
、ディレクトリのサイズを取得しています。
du /tmp/dir1
これにより、ファイルの合計サイズが生成されました。
7 /tmp/dir1
次に、詳細を解析して使用します。
このフォルダは.txt
とtxr
ファイルでいっぱいです。ファイルの合計サイズにのみ関心があり*.txt
ます。
du
コマンドを変更して、ファイルのサイズだけを 1 行で出力する方法はあり*.txt
ますか?
ファイルのリストをコマンドに渡しますdu
。例えば:
du -s /tmp/dir1/*.txt
合計サイズのみを取得するための可能な解決策は、du
次のように の出力の最後の行を取得することです。
du -c /tmp/dir1/*.txt | tail -1
du
出力をフィルタリングする簡単な方法がありません。find
withを使用しstat
てファイルサイズを取得し、それawk
を合計することができます。
$ find /tmp/dir1 -name '*.txt' -exec stat -c %s {} + | awk '{s+=$1} END {print s}'
stat
互換性のない引数のため、これは Linux/GNU システムでのみ機能することに注意してください。
--exclude
次のオプションを使用します。
du --exclude '*.krt' /tmp/dir1
以下のコマンドを使用して、ディレクトリとファイルのサイズを確認することもできます。
パス ( /tmp/dir1 )du -sh *
またはdu -sh /tmp/dir1