Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1637 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs

  |Résolu] Script et "script.ini"

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

|Résolu] Script et "script.ini"

n°744480
kafifi
Posté le 24-10-2005 à 23:17:34  profilanswer
 

Bonsoir,
 
J'ai créé un script shell qui télécharge un fichier à partir d'une url,
et envoie un e-mail une fois la tâche achevée.
 
J'aimerais que les paramètres de type adresse url / destinataire e-mail etc...  
soient stockés dans un fichier "script.ini" séparé, dans lequel le script irait puiser les informations.  
 
Est-ce envisageable avec un scrip bash ? Doit-on passer par PERL ?
Pourriez-vous m'éclairer sur la syntaxe ?
 
D'avance merci


Message édité par kafifi le 04-11-2005 à 18:25:16
mood
Publicité
Posté le 24-10-2005 à 23:17:34  profilanswer
 

n°744486
trictrac
Posté le 24-10-2005 à 23:39:09  profilanswer
 

pour le script bash, le plus simple selon moi est de passer par un source du fichier de conf. Je m'explique:
 
au début de tscript tu fais  
 
. /etc/tonfichier_de_conf   < attention a l'espace apres le point
 
A ce moment la, bash va inclure le fichier apres le point, fichier dans lequel tu initialises tes variables ... a la syntaxe bash bien sur, et SANS le shebang, mais bon, a toi de la préciser dans les commentaires du fichier de conf ...

n°744495
kafifi
Posté le 25-10-2005 à 00:27:48  profilanswer
 

trictrac a écrit :

pour le script bash, le plus simple selon moi est de passer par un source du fichier de conf. Je m'explique:
 
au début de tscript tu fais  
 
. /etc/tonfichier_de_conf   < attention a l'espace apres le point
 
A ce moment la, bash va inclure le fichier apres le point, fichier dans lequel tu initialises tes variables ... a la syntaxe bash bien sur, et SANS le shebang, mais bon, a toi de la préciser dans les commentaires du fichier de conf ...


@trictrac,  
ta solution fonctionne parfaitement !
Est-ce utilisable également sous un script Perl ?
 
Merci.
A+


Message édité par kafifi le 25-10-2005 à 00:28:06
n°744777
trictrac
Posté le 25-10-2005 à 18:05:43  profilanswer
 

en perl, j'ai demandé il ya peu sur prog, et on m'a dit d'aller voir sur CPAN tous les modules qui commencent par Config::
En particulier Config::Tiny qui est facile a mettre en place, et fonctionne super bien ...

n°744805
kafifi
Posté le 25-10-2005 à 19:28:06  profilanswer
 

trictrac a écrit :

en perl, j'ai demandé il ya peu sur prog, et on m'a dit d'aller voir sur CPAN tous les modules qui commencent par Config::
En particulier Config::Tiny qui est facile a mettre en place, et fonctionne super bien ...


 
Je vais aller y jeter un oeil.
Merci pour tout.

n°744809
Profil sup​primé
Posté le 25-10-2005 à 19:34:00  answer
 

en perl, tu peut aussi utiliser la même methode, en faisant un
require "mon_fichier_de_conf";
et en utilisant dedans la syntaxe du perl...
 
mais utiliser un system comme Config::Tiny ou bien même un fichier XML est moins dangereux, et surtout, permet de mettre des valeurs par defaut pour un script... et en plus, ca fait plus propre.

n°748539
kafifi
Posté le 04-11-2005 à 13:16:01  profilanswer
 


Pourrais-tu m'en dire davantage ? Désolé si cela parait trivial, mais je suis débutant...
J'arrive à ouvrir le fichier ini grâce à "open, ..."  mais ensuite je coince.
 
Idem ici. Je suis intéressé par cette méthode plus propre,. J'ai récupéré le package "Config::Tiny" mais je ne sais pas comment l'utiliser. Je n'ai pas trouvé de faq sur le sujet.
 
Merci d'avance.

n°748555
Profil sup​primé
Posté le 04-11-2005 à 13:59:11  answer
 

kafifi a écrit :

Pourrais-tu m'en dire davantage ? Désolé si cela parait trivial, mais je suis débutant...
J'arrive à ouvrir le fichier ini grâce à "open, ..."  mais ensuite je coince.
[/quote]
en perl, pour faire un include d'un fichier (executer le code d'un fichier ), il suffit de faire  

Code :
  1. require "mon_fichier" ;


 

Citation :


Idem ici. Je suis intéressé par cette méthode plus propre,. J'ai récupéré le package "Config::Tiny" mais je ne sais pas comment l'utiliser. Je n'ai pas trouvé de faq sur le sujet.


un `man -k config | grep \(3p\) | grep Tiny `
devrait surement t'aider... (je ne connait pas du tout Config::Tiny, mais les pages de manuel sont souvent dispo avec les paquets... )
 
[quote]
Merci d'avance.


De rien...

n°748600
kafifi
Posté le 04-11-2005 à 14:57:44  profilanswer
 


Je vais avoir besoin de précisions suplémentaires  :ouch:  
 
mon script.ini :
my $Version="ceci_est_ma_version";
 
mon sript perl :
#!/usr/bin/perl -w
use strict;
 
require "script.ini";
print $Version;
 
J'ai un msg d'erreur    Global symbol "$V" requires explicit package name at ...
 
Autrement dit, my $Version n'est pas "lu".
Quel est donc le pb ?

n°748603
Profil sup​primé
Posté le 04-11-2005 à 15:02:55  answer
 

ah oui, mince...
 
dans le fichier requis :  
package "toto";
 
et dans l'autre :
require "fichier";
print $toto::Version ;

mood
Publicité
Posté le 04-11-2005 à 15:02:55  profilanswer
 

n°748709
kafifi
Posté le 04-11-2005 à 18:24:56  profilanswer
 


 
Super cela marche  :pt1cable:  
=> A condition toutefois d'enlever les quotes de toto.
 
Merci pour ton aide bibiskuk !

n°748773
Profil sup​primé
Posté le 04-11-2005 à 20:11:36  answer
 

oups, au temps pour moi...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs

  |Résolu] Script et "script.ini"

 

Sujets relatifs
[Résolu] Shell Script : Sous-chaîne[Resolu] Script de rappel de dates d'anniversaire
[RESOLU] script bash avec hylafax[Résolu] Caractere bizarre dans un script AWK
[Debian] [Résolu] bloqué à cause d'un mauvais script de démarrage ![Résolu] Impossible d'exécuter un script sur un disque rajouté.
[RESOLU] Shell script, espaces et noms de fichiersAccéder à smtp via script telnet [résolu]
[Problème] Grep et log Nmap [Résolu => Awk] Script Simple Inside !Enregistrer la date dans un script [résolu]
Plus de sujets relatifs à : |Résolu] Script et "script.ini"


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR