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
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
Please also mark the comments that contributed to the solution of the article
Content-Key: 46492
Url: https://administrator.de/contentid/46492
Printed on: April 18, 2024 at 15:04 o'clock
3 Comments
Latest comment
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