Perl: lange Pfade?
wie lang dürfen die absoluten Pfade sein in active Perl 5.8.8 build 819?
Hi Leute,
mal eine frage an die Perl Scripter von euch!
ich habe ein skript, welches auch sehr gut Dateien kopiert:
#!/usr/bin/perl
use warnings;
use strict;
use File::NCopy qw(copy);
use File::Path;
copy \1, "C:/Perl/xx/*.txt", "C:/Perl/xx/abc/123";
wenn ich allerdings einen pfad nehme wie:
copy \1, "C:/Dokumente und Einstellungen/user/lokale Einstellungen/Temp/*.txt ", "C:/Perl/xx/abc/123";
geht gar nix mehr!!!!!!!!
Ist der Pfad zu lang? Stören hier die Leerzeichen im Pfad? Was kann ich machen?
Thanx
FM
Hi Leute,
mal eine frage an die Perl Scripter von euch!
ich habe ein skript, welches auch sehr gut Dateien kopiert:
#!/usr/bin/perl
use warnings;
use strict;
use File::NCopy qw(copy);
use File::Path;
copy \1, "C:/Perl/xx/*.txt", "C:/Perl/xx/abc/123";
wenn ich allerdings einen pfad nehme wie:
copy \1, "C:/Dokumente und Einstellungen/user/lokale Einstellungen/Temp/*.txt ", "C:/Perl/xx/abc/123";
geht gar nix mehr!!!!!!!!
Ist der Pfad zu lang? Stören hier die Leerzeichen im Pfad? Was kann ich machen?
Thanx
FM
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 46492
Url: https://administrator.de/contentid/46492
Ausgedruckt am: 22.11.2024 um 12:11 Uhr
3 Kommentare
Neuester Kommentar
hi,
was kommt denn da für eine Fehlermeldung??
und ja du hast recht, die leerzeichen müssen escapet werden, das heist du schreibst anstatt:
copy \1, "C:/Dokumente und Einstellungen/user/lokale Einstellungen/Temp/*.txt ", "C:/Perl/xx/abc/123";
so
copy \1, "C:/Dokumente%20und%20Einstellungen/user/lokale%20Einstellungen/Temp/*.txt", "C:/Perl/xx/abc/123";
bzw kommst du sogar besser wenn du gleich mit den umgabegunsvariablen wie $ENV{"USERPROFILE"} arbeitest.
ich denk mal dann dürfte das klappen...
mfg godlike P
was kommt denn da für eine Fehlermeldung??
und ja du hast recht, die leerzeichen müssen escapet werden, das heist du schreibst anstatt:
copy \1, "C:/Dokumente und Einstellungen/user/lokale Einstellungen/Temp/*.txt ", "C:/Perl/xx/abc/123";
so
copy \1, "C:/Dokumente%20und%20Einstellungen/user/lokale%20Einstellungen/Temp/*.txt", "C:/Perl/xx/abc/123";
bzw kommst du sogar besser wenn du gleich mit den umgabegunsvariablen wie $ENV{"USERPROFILE"} arbeitest.
ich denk mal dann dürfte das klappen...
mfg godlike P
hmm also hab grad selber nochmal probiert, eigentlich müsste das mit copy \1, "C:/Dokumente und Einstellungen/user/lokale Einstellungen/Temp/*.txt ", "C:/Perl/xx/abc/123"; trotzdem funktionieren ohne escapen?!?!
kannste vielleicht mal ne fehlermeldung printen?? oder haste vielleicht keine rechte das zu kopieren??
mfg
kannste vielleicht mal ne fehlermeldung printen?? oder haste vielleicht keine rechte das zu kopieren??
mfg