Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Totale Grösse aller Unterverzeichnisse

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Sonstiges
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Nemo
Gast





BeitragVerfasst am: 16. Nov 2004 14:31   Titel: Totale Grösse aller Unterverzeichnisse

Hallo Ihr Linux Profis

Wie kann ich in einem Verzeichnis die totale Grösse aller darin entaltenen Unterverzeichnisse anzeigen lassen.
du -k . gibt wohl die Grösse aller Unterverzeichnise dar, listet jedoch auch alle darin enthaltenen Unterverzeichnise und Datein (am Bildschirm) aus.

So sollte das Resultat in etwa aussehn:
340 gnome2
1912 thunderbird
3980 firefox

Danke für Eure Hilfe.
 

jochen
prolinux-forum-admin


Anmeldungsdatum: 14.01.2000
Beiträge: 699
Wohnort: Jülich

BeitragVerfasst am: 16. Nov 2004 16:02   Titel:

du mit Option s (summary) gibt nur die Gesamtmenge des belegten Platzes zurück. Also brauchst Du nur die Verzeichnisse ab dem Arbeitsverzeichnis mittels "du -s" beharken. Und das geht wiederum am leichtesten mit find:
Code:
find . -type d -maxdepth 1 -print | sed -e '1d' | xargs du -s
find sucht die Verzeichnisse im Arbeitsverzeichnis, sed schneidet die erste Zeile weg (enthält immer ".") und xargs ruft du mit Option -s und den Verzeichnisnamen als Argument auf.

Jochen
_________________
Die grösste Lüge der EDV? "Mal eben..."
 
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen

joersch
Gast





BeitragVerfasst am: 16. Nov 2004 16:05   Titel:

Mahlzeit,

auf die schnelle und ohne schön:
find . -type d | du -kh

Gruss
 

joersch
Gast





BeitragVerfasst am: 16. Nov 2004 16:06   Titel:

Mahlzeit,

und schon wieder zu langsam...
 

Nemo
Gast





BeitragVerfasst am: 16. Nov 2004 16:29   Titel:

Vielen Dank für Eure rasche Antwort. Auf einem Linux-System funktionieren Eure Lösungen einwandfrei. Jedoch benötige ich diese auf einem IRIX (SGI) System, welches beide Lösungen nicht ausführen kann:

find . -type d -maxdepth 1 -print | sed -e '1d' | xargs du -s
-maxdepth: bad option
Usage: find path-list predicate-list

und

find . -type d | du -kh
Illegal option -- h
Usage: du [-aklmxrsLR] [path ...]

Gibts sonst noch Möglichkeiten?
 

jochen
prolinux-forum-admin


Anmeldungsdatum: 14.01.2000
Beiträge: 699
Wohnort: Jülich

BeitragVerfasst am: 16. Nov 2004 17:11   Titel:

Tja, dann wird es etwas unübersichtlicher:
Code:
ls -la | grep '^d' | cut -c54- | sed -e '/^\.$/d' -e '/^\.\.$/d' | xargs du -s
ls gibt alle Dateien aus, von denen grep nur Verzeichnisse weiterleitet. cut reicht von diesen Zeilen nur den Teil ab Zeichenposition 54 weiter, weil dort der eigentliche Dateiname beginnt. Diesen Wert musst Du ggf. bei Dir etwas anpassen. sed filtert die Einträge "." und ".." heraus, die immer vorkommen un in diesem Zusammenhang unerwünscht sind. Den Part mit xargs kennst Du ja schon.

Jochen
_________________
Die grösste Lüge der EDV? "Mal eben..."
 
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen

Nemo
Gast





BeitragVerfasst am: 18. Nov 2004 11:04   Titel:

Erstmals Danke für die Hilfe.
Jedoch scheint auch dies nicht zu funktionieren.

ls -la | grep '^d' | cut -c54- | sed -e '/^\.$/d' -e '/^\.\.$/d' | xargs du -s
05: No such file or directory

Was mache ich falsch und gibts sonst noch Möglichkeiten?
 

joersch
Gast





BeitragVerfasst am: 18. Nov 2004 12:03   Titel:

Mahlzeit,
wenn die option -h bei deinem 'du' nicht tut - lass sie weg!:
find . -type d | du -k
ansonsten: wie wäre es mit selbst probieren?

Gruss
 

jochen
prolinux-forum-admin


Anmeldungsdatum: 14.01.2000
Beiträge: 699
Wohnort: Jülich

BeitragVerfasst am: 18. Nov 2004 15:11   Titel:

Hast Du die Kommandozeile mittels Cut'n'Paste übernommen? Nicht, dass ich hier ein IRIX zum Ausprobieren hätte, aber ich verwende dabei nichts, was ein Standard-UNIX nicht können sollte. Daher würde ich jetzt am ehesten einen Abtippfehler vermuten.

Hast Du die Position 54 beim cut-Kommando überprüft? Vielleicht gibt Dein ls den Namen etwas weiter rechts/links aus, dann muss dieser Wert natürlich angepasst werden. Das stand auch im vorhergehenden Posting - hast Du das gecheckt?

Ansonsten kannst Du ja mal die Pipe kürzen: erst mal nur ls und grep, dann ls, grep und cut. Und schaue dann auch den Output und versuch zu erkennen, ob ddas jeweils folgende Kommando damit umgehen kann.

Weitere Tipps kann ich Dir nur geben, wenn Du auch mal postest, was Du an Dateien bzw. Verzeichnissen vorliegen hast.

Jochen
_________________
Die grösste Lüge der EDV? "Mal eben..."
 
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Sonstiges Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy