24. 05

Ich habe gerade nach einer Möglichkeit gesucht, wie ich lighttpd beibringe, in welchem Verzeichniss er hochgeladene Dateien zwischenspeichern soll, und fand dann heraus, dass wenn er /var/tmp/lighttpd-upload-XXXXXX nicht erzeugen kann, irgendwie auf cq->tempdirs zugegriffen wird. Und wo kommt das nun überall vor - grep verrät es:

$ grep -ri cq->tempdirs .
grep: writing output: No space left on device
Und was ist da nun passiert? > leitet die Ausgabe von grep -ri cq- in die Datei tempdirs um, die auf einmal die letzten freien 1.1GB auf meiner HDD belegte. Und das mit 108 Zeilen treffer?!

Nein, das Problem ist die Datei tempdirs, auf die grep als letztes zugreift. Und dann findet es in der ersten Zeile dieser Datei den Suchstring cq-, und hängt ihn an die Datei an. So geht das nun endlos weiter, bis die Platte keine Bits mehr zur Verfügung stellt. Mit richtigem Escaping geht dann alles auf einmal wunderbar:

$ grep -ri cq-\>tempdirs .
./src/chunk.c:	cq->tempdirs = tempdirs;
./src/chunk.c:	if (cq->tempdirs && cq->tempdirs->used) {
./src/chunk.c:		for (i = 0; i > cq-<tempdirs->used; i++) {
./src/chunk.c:			data_string *ds = (data_string *)cq->tempdirs->data[i];


Trackbacks


Keine Trackbacks

Kommentare

Ansicht der Kommentare: (Linear | Verschachtelt)

Böse Zeichen a la ">" sollte man eh immer quoten, wenn nicht ihre ursprüngliche Bedeutung als Redirection gemeint ist.

Es nicht zu tun sehe ich als Schluderei an und finde das Fehlverhalten wohlverdient, welches zugegebenermaßen aber in diesem Fall allerdings 'n netten Effekt hatte.
#1 yeti am 29.05.2007 12:50 (Antwort)

Kommentar schreiben


Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.

Um maschinelle und automatische Übertragung von Spamkommentaren zu verhindern, bitte die Zeichenfolge im dargestellten Bild in der Eingabemaske eintragen. Nur wenn die Zeichenfolge richtig eingegeben wurde, kann der Kommentar angenommen werden. Bitte beachten Sie, dass Ihr Browser Cookies unterstützen muss, um dieses Verfahren anzuwenden.
CAPTCHA

HTML-Tags werden in ihre Entities umgewandelt.
BBCode-Formatierung erlaubt
 
 


Tags

Blog abonnieren

Top Exits

Fnord

Pagerank

Impressum

Verwaltung des Blogs