0

Ubuntu のディレクトリ構造が/home/f1/a/home/f2/a/home/f3/aおよびであるとし/home/f4/aます。私の目的は、af1, f2,f3内のフォルダーのディスク サイズを知ることであるとしますf4(これらのフォルダー内のファイルのサイズではなく、フォルダー自体)。私がいる間にそれをすること/home

質問/home各フォルダのディスク サイズを取得するために実行できるシェル コマンドは何aですか?

私の実際の例では、これらのディレクトリ (つまり、、、...、) が 60 ある~/f1/aので~/f2/a~/f60/a他の情報をあまりスパム送信しないコマンドが優先されます。

4

2 に答える 2

0

以下は、f で始まり /home にある限り、フォルダーの数に関係なく、フォルダー サイズの内訳と最後の合計を示します。

du -ch /home/f*/a/

出力:

24K     /home/mgreen/f11/a/
4.0K    /home/mgreen/f12/a/
4.0K    /home/mgreen/f61/a/
32K     total

次のようなものを探していると思いますが、これにより、すべての合計ではなく、各 /a/ フォルダーの合計を取得できます。

for i in $(ls /home/mgreen |grep 'f[0-9]');do for d in $(ls /home/mgreen/$i|grep "a");do printf "$i$d " ;du -sch /home/mgreen/$i/$d | tail -n 1 | awk '{print $1}';done ;done

ここで、$i は最上位ディレクトリ f1-100 に相当し、$d は「a」ディレクトリに相当します。余分なループは、 $a を印刷用の変数に割り当てたままにします。

出力:

f11/a/ 24K
f12/a/ 4.0K
f61/a/ 4.0K

お役に立てれば。

于 2013-10-23T02:54:08.303 に答える