Hallo,
es ist doch ganz einfach:
Puuuuh, sowas les ich grad sehr gerne ;-)
;-)
Genau hier bekam das Script wohl in irgendeiner Situation ein $dest übergeben, das mit CRLF, also \r\n abgeschlossen war, und hat brav ein Verzeichnis mit diesem Namen angelegt.
Das kann wirklich sein, denn die Sdest kommen aus einer Datei, in dem in jeder Zeile ein $dest drin steht und arbeitet die in einer Schleife ab.
Und liest die Datei vermutlich zeilenweise mit fgets(). Diese Funktion liefert eine Zeile aus der Datei *einschließlich* des abschließenden Zeilenumbruchs.
Sollte also für mich möglich sein, das CRLF aus dem $dest zu löschen. trim() macht das aber nicht, ne?
Schau ins Manual. Da steht's explizit beschrieben.
rmdir("verz\r\n");
hätte man es garantiert auch wieder löschen können (passende Zugriffsrechte vorausgesetzt).
Völlig korrekt, das stimmt.
Warum bist du nicht auf die Idee gekommen?
- Warum greift der ominöse \r\n-Ordner, wenn ich ihn öffne, auf den originalen Ordner zu? (Wobei, das müßte ich vor der Frage nochmal gegenchecken...kann sein, dass ich mich hier gerade irre.)
Wie greifst du darauf zu? Von einer Shell, die den abschließenden Zeilenumbruch ihrerseits als Ende der Befehlszeile betrachtet? Möglicherweise lässt sich der mc auch täuschen, indem er einfach davon ausgeht, dass Dateinamen keine Steuerzeichen enthalten.
- Warum macht das Script das erst heute und all die Monate zuvor noch nicht?
Gute Frage. Nächste Frage?
Ich habe weder Script noch Server gewechselt.
Aber vielleicht hat der Hoster irgendeine Einstellung verändert?
Ciao,
Martin
Vielseitigkeit: Von vielen Dingen keine Ahnung haben.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(