Am Mittwoch, 17. August 2005 14:13 schrieb Kay Patzwald:
ich hatte vor kurzem ein merkwürdiges Problem. Hatte für ca. 2 Stunden einen dhcp-Server installiert und am Laufen. Nach dem Löschen des Pakets mit rpm gab es ein Verzeichnis mit lease-Daten, was nicht automatisch gelöscht wurde. In diesem Verzeichnis lagen über 60000!!! Dateien. 1. Frage: Wieso legt der DHCP-Server so viele Dateien in so kurzer Zeit an? keine Ahnung.
2. Frage: Warum kann ich die nicht alle mit einmal (rm -rvf *) löschen? rm meinte, es wären zu viele Dateien. Ist das normal?
Die Länge einer Kommandozeile eines Programmaufrufes ist begrenzt, unter Linux glaube ich bei ca. 20kb Zeichen. Daher kann so ein Aufruf schief gehen. Wenn man also weiss, daß sie Kommandozeile zu langen werden kann bietet sich folgendes an: ls DIR | xargs rm xargs ist Ein Programm welches die Argumente des auszuführenden Programms (hier rm) von stdin liest und das Programm (rm) mit einer möglichst langen Kommandozeile mehrfach aufruft, bis alle Argumente verarbeitet werden. Das funktioniert gut, wenn das Programm (hier rm) mehrfach aufgerufen werden darf um seine Aufgabe zu erledigen. Typische Anwendung von xargs ist auch: find DIR .... | xargs cmd das ist schneller als find DIR ... -exec CMD \{ \} da in letzerem Fall das Programm CMD für jedes Argument aufgerufen wird und mit xargs wei oben beschrieben. Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 9204871 Fax: +49(721) 24874 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer