BASH UNIX – Alimentation d'un fichier INI à partir d'un autre
Le 21/03/2012 Par Jérôme Poussineau
Voici une fonction en BASH permettant le remplacement d’un paramètre contenu dans un fichier .INI par la valeur de ce paramètre récupéré dans un deuxième fichier.
Ce type de fonction peut-être utilisé dans l’installation automatisée d’une applications sous UNIX (nous l’utilisons par exemple pour nos clients dans l’alimentation du fichier opx2.ini à partir de database.ini pour le logiciel P5 de Planisware).
#—————————– # Fonction _ReplaceIni : Remplace une chaine dans un fichier .ini #—————————– function _ReplaceIni { typeset _IniInFile= »$1″ # Nom du fichier ini typeset _IniOutFile= »$2″ # Fichier de sortie typeset _IniStr= »$3″ # Chaine a rechercher typeset _IniSear= »$4″ # Valeur a remplacer typeset _IniRepl= » # Valeur trouvee typeset _IniOutContent= » # Contenu du fichier de sortie if [[ -s « ${_IniInFile} » ]] && [[ -n « ${_IniStr} » ]] then # Extraire le contenu de la ligne de definition _IniRepl=$(egrep « :${_IniStr} » ${_IniInFile} | cut -d’:’ -f2-) fi # Affichage de la valeur recuperee echo « Alimentation de ${_IniRepl} » # Remplacement de la ligne dans le fichier .ini _IniOutContent=$(sed « s/${_IniSear}/${_IniRepl}/g » ${_IniOutFile})# Vidage du fichier de sortie > ${_IniOutFile}# Le contenu est ajoute au fichier de sortie echo « ${_IniOutContent} » >> ${_IniOutFile} }
|
Voici un exemple d’appel de cette fonction pour l’alimentation du fichier opx2.ini à partir de database.ini :
# Exemple d’utilisation pour OPX2 _ReplaceIni « /…/OPX2Modules/database.ini » « /…/OPX2HttpRoot/webconf/opx2.ini » « database-type » « database-type :ISTYPE » |
Tags
À voir aussi
Tous les articles
Tuto : enregistrer des scénarios pour ses tirs de performance avec JMeter
Le 20/04/2022 Par Thomas CHABOUD

Du back au front : les server-sent events
Le 11/02/2022 Par Victor COLEAU