Leser: 24
1 2 3 4 5 6 7 8 9 10 11
use File::Spec; my $src='C:\user\blala'; my $dest='C:\NEWDIR\user\blala'; my $file_src = 'C:\user\blala\Desktop\map'; my $file_rel = File::Spec->abs2rel($file_src,$src); my $file_dest = File::Spec->rel2abs($file_rel,$dest); print "SRC: $file_src\n"; print "REL: $file_rel\n"; print "DST: $file_dest\n";
1 2 3 4 5 6 7
use File::Spec; my ($volume, $directories, $file) = File::Spec->splitpath( $path ); my @dirs = File::Spec->splitdir( $directories ); $directories = File::Spec->catdir( "NEWDIR", @dirs ); my $newpath = File::Spec->catpath( $volume, $directories, $file );
2010-04-15T15:27:12 nastjaaber wie ich schon gesagt habe, es musss automatisch passieren, nicht einfach schreiben....
1 2 3 4 5 6
#!/usr/bin/perl -w use strict; use warnings; my $dir = 'C:\user\blala\Desktop\map'; my $newdir = substr ($dir,0,3) . 'NEWDIR\\' . substr ($dir,3); print $newdir;
2010-04-15T22:05:56 pqfunktioniert dann aber nicht mehr, falls das laufwerk 2 oder mehr buchstaben hat. falls das auf windows möglich ist.
und ist natürlich nicht portabel, im gegensatz zu File::Spec.
aber musst du wissen =)