Wie viel Speicherplatz verwendet eine Liste von Dateien?

8

Wie kann ich herausfinden, wie viel Festplatte eine Liste von Dateien verwendet? Ich suche eine Variation von

du -s *.sql

Ich möchte nur die Gesamtsumme sehen und mit dem obigen Befehl wird immer eine Zeile für jede Datei angezeigt.

Elazar Leibovich
quelle

Antworten:

14

Sie können verwenden tail, um die letzte Zeile (die Summe) aus der Ausgabe von du:

du -c *.sql | tail -n 1

Es scheint keine Möglichkeit zu geben du, nur die Summe einer Reihe von Dateien zu melden.

Lesmana
quelle
3

Was funktioniert nach Ihrem Beispiel nicht? Willst du eine Summe?  man duzeigt, dass die -cOption eine Nutzungssumme bietet:

du -sc *.sql

Sie können auch die -hoder -kArgumente mögen .

jmtd
quelle
Siehe meine Klarstellung. Ich möchte, dass nur die Summe gedruckt wird.
Elazar Leibovich
2

Ihre Frage ist sehr zweideutig, aber ich vermute, Sie suchen nach der -cFlagge, um insgesamt zu produzieren.

du -c *.sql
Caleb
quelle
Ich möchte, dass es den gleichen Effekt hat wie du -s dir. Was die Festplattennutzung des Verzeichnisses zusammenfasst und sonst nichts.
Elazar Leibovich
1

kann eine Variation sein wie:

du -sch * | tail -n 1
totedati
quelle
Dies fügt der akzeptierten Antwort von nichts hinzu du -c * | tail -n 1. Auch die -sOption macht hier nichts.
Wildcard
2
Dies ist im Wesentlichen eine Kombination der anderen Antworten. Die -hOption ist nicht erforderlich. Das OP hat nicht danach gefragt.  | tail -n 1ist besser als | grep totalweil es Dateien geben könnte, deren Namen das Wort enthalten total.
G-Man sagt 'Reinstate Monica'
1
@Wildcard: Verringert tatsächlich -sdie Datenmenge, die durch die Pipe geschrieben wird (wenn eines der Argumente Verzeichnisse sind).
G-Man sagt 'Reinstate Monica'
Aha! @ G-Man, guter Fang; Du hast recht.
Wildcard
Aus diesem Grund habe ich das Flag -s hinzugefügt. Mein Verständnis der ursprünglichen Abfrage ist, dass die Gesamtsumme aller Dateien aus Unterverzeichnissen in separaten Gesamtsummen zusammengefasst werden soll, nicht die Auflistung für jede Datei, wie viel Speicherplatz verbraucht wird. Wenn nicht, dann ist -s falsch und frisst alle Dateien aus Unterverzeichnissen. Schwanz -n 1 ist immer besser, danke!
Totedati
-2
cat *.sql | wc -c

Die Antwort ist in Bytes.

jmtd
quelle
3
Ja, aber Sie müssen die ganzen satten 10 GB lesen, um es zu sagen ...
Elazar Leibovich