inQuake Forum - mehr braucht man nicht!
fc bayern muenchen borussia dortmund  google plus ingame

Zurück   inQuake Forum - mehr braucht man nicht! > Themenforen > Linux/Unix Forum

Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
Alt 12. November 2004, 15:07   #1
 
Benutzerbild von much
Lucy
 
Registriert seit: Nov 2002
Beiträge: 863
Standard ls - Ordner sortieren nach Größe

Advertising
Also folgendes Problem:
Ich habe verschiedene Ordner, die unterschiedlich großen Inhalt haben und möchte diese der größe nach sortieren.

Bei Dateien hab ich das bisher mit "ls -Ssh | less" gemacht.
Doch dummerweise werden damit alle Ordner nur mit 4.0k aufgeführt und nicht "richtig" sortiert.

Ich hoffe ihr versteht was ich meine und wie ich das möglichst einfach angezeigt bekomme

danke
--much
__________________
Linux is like a wigwam - no windows, no gates, apache inside
much ist offline   Mit Zitat antworten
Alt 12. November 2004, 15:41   #2
 
Benutzerbild von Mithrandir
Sorlag
 
Registriert seit: Aug 2000
Beiträge: 3.986
'du' ist ein Befehl, der dir Ordner und ihre Größen anzeigt.
__________________
[small]Viele Namen habe ich in vielen Ländern. Mithrandir heiße ich bei den Elben, Tharkûn bei den Zwergen;
Olórin war ich in meiner Jugend im Westen, der vergessen ist, im Süden Incánus, im Norden Gandalf; in den Osten gehe ich nicht.


J.R.R. Tolkien - The Lord Of The Rings[/small]
Mithrandir ist offline   Mit Zitat antworten
Alt 12. November 2004, 15:47   #3
 
Benutzerbild von much
Lucy
 
Registriert seit: Nov 2002
Beiträge: 863
Ist schon klar, aber ich will die Ordner nach Größe sortiert haben.
__________________
Linux is like a wigwam - no windows, no gates, apache inside
much ist offline   Mit Zitat antworten
Alt 12. November 2004, 16:41   #4
 
Benutzerbild von pawlak
Dopefish
 
Registriert seit: Feb 2002
Beiträge: 11.299
omg wenn cirad das sieht!
__________________
Zitat:
Original geschrieben von pagenez
ach und pawlak?
du verhurrtes stück einer dreckwurst, halt doch bitte dein maul, ja? wer absolut kein real-life hat, einer wie du, der absolut nichts zu tun hat, als seine scheiße im irc auf andere abzulassen, sollte sich seinen daumen in das arschloch schieben, die augen schließen und dabei an *****n denken.
alles klar?
gut!
pawlak ist offline   Mit Zitat antworten
Alt 12. November 2004, 16:59   #5
 
Benutzerbild von much
Lucy
 
Registriert seit: Nov 2002
Beiträge: 863
Zitat:
Original erstellt von pawlak
omg wenn cirad das sieht!
hehe, der war gut
dann bekomm ich endlich mal ne richtige antwort ...







... in form von etlichen Din-A4 seiten
__________________
Linux is like a wigwam - no windows, no gates, apache inside
much ist offline   Mit Zitat antworten
Alt 12. November 2004, 18:05   #6
Chawki
Guest
 
Beiträge: n/a
Aus meinen Notizen:

Die Verzeichnisse nach der (rekursiven) Speicherbelegung auflisten:
find -type d -maxdepth 1 | xargs du -sm | sort +0n | tail -50

Die Speicherbelegung der Verzeichnisse im aktuellen Verzeichnis:
du -h --max-depth=1
und für ein Verzeichnis:
du -sh <verzeichnis>

Vielleicht auch interessant:

Die (50) größten Dateien im System finden:
cd /; ls -laFR | sort +4n | tail -50
Unschön: Auch Device-Dateien u. /proc-Dateien werden aufgelistet und der absolute Pfad fehlt.
Alternativen: ls -alSr im akt. Verz.,
(find . -ls | sed -e 's/ */ /g;' | sort +6n)
  Mit Zitat antworten
Alt 12. November 2004, 18:47   #7
colo2
Guest
 
Beiträge: n/a
Ordner gibt's keine...

Code:
find . -maxdepth 1 -type d | du | sort -r
kannst du auch noch mit tail -n<zeilenanzahl> limitieren, wenn's zu viele sind. Wenn du die Größe absteigend sortiert haben willst, einfach den "-r"-Parameter von Sort omittieren.
  Mit Zitat antworten
Alt 12. November 2004, 19:51   #8
edgewalker
Guest
 
Beiträge: n/a
du -cks */

Eselsbrücke: "ducks".

Wenn man den Slash weglässt, tauchen auch alle Dateien auf.

Will man auch die Dotfiles haben, geht das wohl noch am einfachsten mit

( shopt -s dotglob ; du -cks */ )

Die Ausgabe kann man dann nach belieben sortieren, zB

( shopt -s dotglob ; du -cks */ ) | sort -rnsk1
bzw
du -cks */ | sort -rnsk1
  Mit Zitat antworten
Alt 12. November 2004, 19:59   #9
 
Benutzerbild von much
Lucy
 
Registriert seit: Nov 2002
Beiträge: 863
Danke nobody für den Tip mit den 50 größten Dateien, das ist auch praktisch.

Also ich hab eben folgendes probiert (nach colos Methode):
Code:
find . -maxdepth 1 -type d | du -h | sort -r
Das ist genau das was ich wollte, aber eins wundert mich noch - warum werden manche Sachen nicht richtig einsortiert?
Aha, der sortiert nur nach dem ersten Zeichen, aber seht doch einfach selbst:

Code:
92K     ./306362
52K     ./349699
48K     ./148568
44K     ./114020
36K     ./231296
36K     ./225739
36K     ./158618
36K     ./132911
[red]348K    ./309577[/red]
32K     ./137083
28K     ./812208
24K     ./110078
24K     ./103312
[red]240K    ./220017[/red]
20K     ./620927
20K     ./331102
20K     ./319238
20K     ./283419
20K     ./196113
20K     ./165766
20K     ./111622
16K     ./968863
16K     ./831948
Wenn man das noch lösen könnte wäre die Sache perfekt
__________________
Linux is like a wigwam - no windows, no gates, apache inside
much ist offline   Mit Zitat antworten
Alt 12. November 2004, 20:04   #10
 
Benutzerbild von much
Lucy
 
Registriert seit: Nov 2002
Beiträge: 863
Zitat:
Original erstellt von edgewalker
du -cks */

Eselsbrücke: "ducks".
Da kommt bei mir nix vernünftiges dabei raus :/

Code:
24      103312
24      110078
20      111622
44      114020
12      124144
16      124489
12      126399
16      131609
36      132911
32      137083
48      148568
16      150553
16      152356
12      157899
36      158618
Sehr seltsam.
Ich will die Verzeichnisse doch nicht nach ihrem Namen ordnen, sondern der größe nach
__________________
Linux is like a wigwam - no windows, no gates, apache inside
much ist offline   Mit Zitat antworten
Alt 12. November 2004, 20:08   #11
edgewalker
Guest
 
Beiträge: n/a
Zitat:
Original erstellt von much
Also ich hab eben folgendes probiert (nach colos Methode):
Code:
find . -maxdepth 1 -type d | du -h | sort -r
Das ist falsch, du ignoriert seine Standardeingabe, das find kannst du dir also sparen.

Zitat:
Das ist genau das was ich wollte, aber eins wundert mich noch - warum werden manche Sachen nicht richtig einsortiert?
Erstens wird per Default alphabetisch sortiert, 10 kommt also vor 2. Das kann man mit -n ändern. Dann hast du aber immer noch das Problem, dass 20K "grösser" sind als 2M.

Du kannst also nicht mit lesbaren Einheiten arbeiten.

(Übrigens, editierten Post von mir nochmal lesen.)
  Mit Zitat antworten
Alt 12. November 2004, 20:12   #12
 
Benutzerbild von much
Lucy
 
Registriert seit: Nov 2002
Beiträge: 863
Problem scheint gelöst (man sort lesen hilft eben doch ^^):
Code:
find . -maxdepth 1 -type d | du -h | sort -rg
Allerdings muss jetzt das find noch raus, ist ja laut dir überflüssig. Aber das Ergebnis stimmt:

Code:
348K    ./3095772
240K    ./2200170
92K     ./3063624
52K     ./3496997
48K     ./1485682
44K     ./1140200
36K     ./2312964
36K     ./2257392
36K     ./1586188
36K     ./1329116
32K     ./1370839
/edit: Man kann dann eben immer entscheiden, ob man sein Ergebnis in Megabyte(-m) oder Kilobyte(-k) haben will.
"du -cksm * | sort -rnsk1"
Ist genau das was ich brauchte.
__________________
Linux is like a wigwam - no windows, no gates, apache inside
much ist offline   Mit Zitat antworten
Alt 12. November 2004, 22:36   #13
edgewalker
Guest
 
Beiträge: n/a
Wenn du -m hast, brauchst du -k nicht -- also du -cms.
  Mit Zitat antworten
Alt 12. November 2004, 22:39   #14
 
Benutzerbild von much
Lucy
 
Registriert seit: Nov 2002
Beiträge: 863
Hab ich übersehen.

Mist
__________________
Linux is like a wigwam - no windows, no gates, apache inside
much ist offline   Mit Zitat antworten
Alt 15. November 2004, 14:25   #15
cirad
Guest
 
Beiträge: n/a
@pawlak:
Sehr richtig. <:
  Mit Zitat antworten
Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:08 Uhr.


Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0


ingame Netzwerk
Support | AGB | Probleme mit der Werbung melden
Online Werbung | Mediadaten | Unternehmen | Karriere | Presse | Impressum

© ingame GmbH, ingame™, in™ und incup™ sind eingetragene Markenzeichen der ingame GmbH. Verwendung von Inhalten nur mit schriftlicher Genehmigung.