11

レイアウト内のフォルダーに散らばっているファイルがたくさんあります。たとえば、次のようになります。

dir1/somefile.gif
dir1/another.mp4
dir2/video/filename.mp4
dir2/some.file
dir2/blahblah.mp4

また、MP4 ファイルのみに使用される合計ディスク容量を見つける必要があります。これは、どういうわけか再帰的でなければならないことを意味します。

私はduパイピングを見て、いじりましgrepたが、MP4ファイルがどこにあるかに関係なく、MP4ファイルだけを計算する方法を理解できないようです。

人間が読める総ディスク容量の出力も必要です。可能であれば、できれば GB で?

何か案は?ありがとう

4

3 に答える 3

4

あなたは簡単に行うことができます:

find -name "*.mp4" -exec du -b {} \; | awk 'BEGIN{total=0}{total=total+$1}END{print total}'

find コマンドの -exec オプションは、find で見つかったファイルとして {} を使用して単純なコマンドを実行します。du -b は、ファイルのサイズをバイト単位で表示します。awk コマンドは、変数を 0 に初期化し、各ファイルのサイズを取得して、コマンドの最後に合計を表示します。

于 2015-03-06T14:18:35.967 に答える
3

これは、すべての mp4 ファイルのサイズをバイト単位で合計します。

find ./ -name "*.mp4" -printf "%s\n" | paste -sd+ | bc
于 2015-03-06T14:04:26.053 に答える