HEYLO,Script Perl Configuration et mise en œuvre de chemin relatif sur Windows (XP)/Unix (Solaris)
je rencontre, en quelque sorte, un casse-tête en ce qui concerne le développement de script perl. J'ai écrit un petit script Perl en utilisant l'installation Perl standard (basique). J'ai la configuration suivante:
C: \ MyScript \ perl.pl
C: \ MyScript \ configuration \ config.ini
C: \ MyScript \ output \ sortie.txt
C'est le perl Source .pl:
$config = '/configuration/config.ini';
$conf = Config::IniFiles->new(-file => $config_file);
$output_dir = conf->val('output', 'out_dir');
$output_file = "$output_dir/output.txt";
open (out, ">$output_file") || die ("It's not your day mate!");
print out "This is a test...";
close out;
Ceci est le contenu config.ini:
[output]
output_dir = C:\MyScript\output
Le problème que j'ai est que le s La ligne econd ($ conf) semble avoir du mal à ouvrir le fichier à cet emplacement. Comme je vais utiliser ce script dans un environnement windows et unix (sans installer de modules d'addition) je me demandais comment je pourrais contourner cela? Ce que j'espérais était de créer un script entièrement configurable via le fichier config.ini. La configuration cependant, ne fonctionne que si je lui donne son chemin absolu, comme si:
$config = 'C:\MyScript\configuration\config.ini';
Mais puisque ce sera déployé dans plusieurs environnements différents modifier la source des scripts est hors de question. Que recommanderiez-vous les gars? Comment devrait-on aborder un tel scénario?
Toute aide et/ou conseil est grandement appréciée.
Tous les meilleurs, MC
Cela a fonctionné super merci! À l'exception, j'ai dû créer un fichier batch et l'exécuter sur la racine des scripts. L'exécuter à partir de Perl Express n'a pas fonctionné. Problème résolu aucun-le-moins! Merci! –