Bonjour tout le monde,
Je travaille sur un script en Perl où tous les répertoires doivent être en relatif. Comme je n'ai pas fait attention à cette exigence dès le début j'ai presque tout fait en absolu. Maintenant je veux tout convertir en relatif, et franchement je ne comprends pas ce qu'il faut faire!
J'ai trouvé la fonction abs2rel qui permet de convertir un chemin absolu en chemin relatif, je l'ai utilisé comme suit:
Quand je convertie le chemin "$parent_path", sur lequel je me base pour localiser tous mes fichiers et mes répertoires, je perds le bout du fil et je ne sais plus comment procéder!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 sub GetDirPath { $cwd_ = dirname $0; #repertoire du script quelque soit le repertoire courant de lancement my($filename_, $dirs_, $suffix_) = fileparse($cwd_,qr/\.[^.]*/); # # my ($parent_path,$other) = split('$filename_', $dirs_); #####convertir en chemin relatif##### use File::Spec; my $relativePath = File::Spec->abs2rel($parent_path) ; my $path_1 = $relativePath."AutreDossier" ; print "$path_1\n"; my $path_2 = $relativePath."Dossier1" ; print "$path_2\n"; my $path_3 = $relativePath."configuration.ini" ;print "$path_3\n"; my $path_4 = $relativePath."fichier1.txt" ; print "$path_4\n"; }
Mon répertoir de travail est le suivant:
et j'aimerais pouvoir accéder à mes dossier existant dans xxxx comme suit: ..\..\Dossier1
Pourriez vous m'aider SVP?
Par avance, merci.
Cordialement,
O_Nejma
Partager