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.

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.


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 .


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

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

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.


3
Ja, aber Sie müssen die ganzen satten 10 GB lesen, um es zu sagen ...
Elazar Leibovich
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.