Mysteriöses chdir ;-)
Piet
- perl
0 Struppi
Hallo erstmal,
folgende Seltsamkeit beschäftigt mich hier:
Ich habe ein kleines Redaktionssystem am laufen, bei dem eine sub-routine in meinem Arbeitsverzeichnis ein Unterverzeichnis und eine Datei anlegt. In dieser Weise (trivial, aber vielleicht hilft's zum Nachvollziehen):
mkdir "unterverzeichnis";
chdir "unterverzeichnis";
open (DATEI, ">...)
Die andere sub soll nun eine neue Verzeichnisliste des Arbeitsverzeichnisses anlegen- ebenso trivial:
chdir "..";
my @liste=glob "*";
Klappt natürlich problemlos, aber das für mich mysteriöse passiert im Folgenden:
Nun hätte ich die so gewonnene Liste sinnvoller Weise gern als Datei im Arbeitsverzeichnis (worin ich mich via chdir ".."; eigentlich auch befinden müsste). Aber bei der Aktion
open (LISTE, ">>übersicht.html" ...)
möchte Perl diese Datei zwanghaft ins oben erzeugte Unterverzeichnis schreiben.
Kann mir da vielleicht wer auf die Sprünge helfen, warum chdir hier nur lesend klappt?
Grüße
Piet
mkdir "unterverzeichnis";
chdir "unterverzeichnis";
open (DATEI, ">...)
Las dir mal mit Cwd die jeweiligen Arbeitsverzeichnisse ausgeben.
use Cwd;
print getcwd();
chdir "..";
my @liste=glob "*";
print getcwd();
open (LISTE, ">>übersicht.html" ...)
print getcwd();
Struppi.