Holen Sie sich den gesamten Speicherplatz für mehrere Verzeichnisse


19

Ich kenne du -sh, das mir den gesamten Speicherplatz für ein bestimmtes Verzeichnis zur Verfügung stellt.

Mein Problem ist, dass die Verzeichnisse, an denen ich interessiert bin, über viele Unterverzeichnisse verstreut sind. Ich habe den richtigen "find" -Befehl, der mir diese Verzeichnisse gibt. Ziel ist es, die gefundenen Verzeichnisse zu übergeben und den gesamten von diesen Verzeichnissen belegten Speicherplatz abzurufen

Wenn ich diese Verzeichnisse als Argumente an du übergebe, wird total für dieses Verzeichnis verwendet, aber keine Gesamtsumme. Ich möchte die Gesamtsumme bekommen.

Beispiel du -sh dir1 dir2gibt eine Ausgabe wie folgt aus

17k dir1 55K dir2

Was muss ich tun, um die Gesamtsumme zu erhalten?


2
Versuchen Sie es du -sh --total . Und man du;-)
Rmano

1
Vielen Dank. Es klappt. Ich habe es tatsächlich mit --files-from und einigen anderen Optionen versucht. Irgendwie habe ich das --total total verpasst, hauptsächlich wegen meiner Unfähigkeit, den 2. äquivalenten Parameter für "-c" zu lesen :)
user871199

Antworten:


19

Verwenden Sie das Flag --totalim duBefehl.

du -sh --total dir1 dir2

Von man du:

   -c, --total
          produce a grand total

Kleiner Zusatz: Optionen können kombiniert werden und tailkönnen verwendet werden, um die Ausgabe zu trimmen, wiedu -cs /etc /tmp | tail -n 1
Sergiy Kolodyazhnyy
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.