Mailinglisten-Archive |
* Norbert Pfeiffer: Hallo Norbert, > vor einiger Zeit habe ich viele Dateien mit PHP in einen Ordner > schreiben lassen und konnte sie dann nicht mehr loeschen, weil > "rm -f" versagte. "Zu viele Argumente" bekam ich als Errormeldung. JFTR: Ja. rm -f * wird auf der Kommandozeile zu rm -rf Datei [,Datei[,Datei]] expandiert. Ist diese Zeile länger als in include/linux/binfmts.h angegeben (üblicherweise 32 MAX_ARG_PAGES mit jeweils 4 KB, also 128 kB), kommt diese Fehlermeldung. > Nun suche ich jemanden, der mir sagen kann, wie ich den Grenzwert > der Argumentliste von "rm -f" finde. In include/linux/binfmts.h > Ist die absolute Groesse der Liste der Dateinamen entscheidend? Ja. Üblicherweise 128 kB. > Oder ist es nur deren Anzahl und wo koennte das stehen? > "man rm" hilft hier auch nicht wirklich ... :-( Richtig. Um die Begrenzung zu umgehen gibt es einige Möglichkeiten: Einmal könnte man über for für jede Datei einen rm-Prozess starten, andererseits könnte man das auch ganz einfach mit Hilfe von find und xargs erledigen: find / -name foo.* -print0 | xargs -0 rm Das ist die effizienteste Lösung. Gruß, Christoph
php::bar PHP Wiki - Listenarchive