サブフォルダが多いフォルダがあります。フォルダとサブフォルダ内のすべてのファイルを
スキャンし、見つかったすべてのファイルの合計ディスク容量を.pst
知る必要があります。.pst
例:
\myfolder\file1.pst 10gb
\myfolder\mysubfolder\file2.pst 2gb
\myfolder\mysubdolder\mysubsubfolder\file3.pst 8gb
Total size of all .pst files: 20gb.
どうすればいいですか?ありがとうございます!
答え1
GNUツールの仮定(Linuxシステムでは合理的な仮定):
find myfolder -type f -name '*.pst' -print0 |
du --human-readable --total --files0-from=-
*.pst
名前がパターンと一致するディレクトリ内または下のすべての一般的なファイルを探しますmyfolder
。各ファイルのパス名は、空白で区切られたリストに渡されます。du
これは、標準入力からそのファイルを読み取り、ファイルが占める合計サイズを報告します。
答え2
ファイル名のリストを入力として渡すことができますdu
(GNUバージョン、つまり組み込まれていないLinuxのバージョンを想定)。
find myfolder -name '*.pst' -print0 | du --files0-from=- -c
あるいは、ファイル名のリストが長すぎない場合は、シェルにコマンドラインからそれを渡すこともできます。これはzshですぐに機能し、shopt -s globstar
bashが必要です。
cd myfolder
du -c -- **/*.pst