Bonjours,
je souhaite utiliser le module appconfig pour :
- lire dans un premier depuis la ligne de commande le nom d'un fichier de configuration que l'utilisateur y aura précisé
- et donc ensuite lire des parametres depuis ce fichier de configuration
- et enfin relire les parametres depuis la ligne de commande si l'utilisateur souhaitait y redéfinir (plus aisément que par le fichier) des parametres.
Un petit bout de code de coutume :
Le problème : le deuxième appel de args() ne remet pas à jour les parametres. Il n'y a que lorsque j'en lève le premier appel à args() que le deuxième permet d'ecraser les anciens parametres du fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 my $config = AppConfig->new("conf_file=s", "mydb=s", "ensembl_database=s", "ensembl_host=s", "refseq_db_file=s", "tigr_db_file=s", "chicken_db_dir=s", "transfac_site_table=s", "identif_file=s", "blat_file=s", "aln_length=s", "minimum_overlap=s", "promoter_upstream=s", "promoter_downstream=s", "set1=s", "set2=s", "min=s", "max=s", "help"); $config->args(); $config->file($config->conf_file); $config->args();
exemple :
Ca marche mais de cette facon je ne peux pas obtenir le nom du fichier de configuration de l'utilisateur voudrait pouvoir préciser.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 my $config = AppConfig->new("conf_file=s", "mydb=s", "ensembl_database=s", "ensembl_host=s", "refseq_db_file=s", "tigr_db_file=s", "chicken_db_dir=s", "transfac_site_table=s", "identif_file=s", "blat_file=s", "aln_length=s", "minimum_overlap=s", "promoter_upstream=s", "promoter_downstream=s", "set1=s", "set2=s", "min=s", "max=s", "help"); #########$config->args(); $config->file($config->conf_file); $config->args();
J'espère avoir été compréhensible et vous souhaite bon appetit!
Yan
Partager