Hallo, On Thu, 12 Sep 2002, Andreas Kyek wrote:
On 12 Sep 2002 at 10:05, Thomas Hertweck wrote:
David Haller wrote:
On Thu, 12 Sep 2002, Thomas Hertweck wrote:
[...] for i in /home/* ; do du -sk $i ; done | sort -n
Wozu die Schleife?
du -s -k /home/* | sort -n
Hast recht, ist in dem Falle nicht noetig ;-) Ist zwar nicht falsch, aber definitiv nicht noetig, ich ziehe hiermit mei- nen Vorschlag also halbwegs zurueck. Ist wohl so ne Angewohn- heit von mir, weil ich es fuer andere Befehle als "du" manch- mal brauche....
Ihr habt wohl beide nicht so viele User im System.
Stimmt bei mir -- du aber auch nicht! *eg* (s.u.)
Also: Während die Lösung 1 (mit for-Schleife) immer funktioniert, scheitert die Lösung zwei, wenn zu viele Homeverzeichnisse da sind (dann wird schlichtweg der Zeilenpuffer der Shell zu klein).
Ack. Aber: das 'for' scheitert (genauso) bald an der Expandierung des '*'. Die Schleife hilft hier also nicht weiter (oder hast du nen Gegenbeweis? So bei sagen wir 20k Verz. in /home?), da das /home/* in beiden Faellen von der Shell expandiert wird. Dann ist also sowieso was besseres gefragt, z.B.: find /home/ -type d -maxdepth 1 -exec du -sk {} \; (ungetestet). -dnh -- Ihr Scherzkekse! Computer - und das sollte bekannt sein - rechnen garnicht. Sie setzten oder löschen bits. Nicht mehr, nicht weniger. Daß dies gelegentlich wie "Rechnen" oder "Usenet" oder "Display Postscript" aussieht ist eher Zufall, trägt aber zur Erhaltung der Art bei. -- Dietz Proepper in dasr