script shell et fichiers de config

Le
Nicolas-Michel_REMOVE
Bonjour

Je suis en train de faire un petit script shell qui nécessite un fichier
de configuration.

Habituellement je fait un fichier plat puis joues du grep, awk, sed,
echo > Mais c'est fastidieux.

J'ai tenté d'utiliser PlistBuddy, un outil xml.
Il me permet de balancer assez simplement des info structurées, mais
pour aller les rechercher, à moins qu'il n'y ait qu'une seule valeur on
se retrouve avec une sortie xml qu'il faut parser, c'est justement pas
le but.

Je pourrais aussi remplacer le fichier de config par une base sql, mais
ça implique d'installer sql, donc non.

Existe-t-il une commande qui pourrait envoyer puis récupérer des données
dans un fichier texte de manière simple ?

Genre :
$ command write liste1 "valeur1
valeur2"
$ command add liste1 "valeur3"
$ command read liste1
valeur1
valeur2
valeur3



Merci !

--
Nicolas Michel
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Stephane CHAZELAS
Le #18985191
2009-03-26, 13:02(+01), Michel Nicolas Alex:
[...]
Je suis en train de faire un petit script shell qui nécessite un fichier
de configuration.


[...]

Pourquoi pas tout simplement:

monscript.conf:

conf_param1=value
conf_param2=value
...

Et dans monscript:

. /path/to/monscript.conf || exit
use "$conf_param1" "$conf_param2"

?
--
Stéphane
Nicolas-Michel_REMOVE
Le #18992281
Stephane CHAZELAS
2009-03-26, 13:02(+01), Michel Nicolas Alex:
[...]
> Je suis en train de faire un petit script shell qui nécessite un fichier
> de configuration.
[...]

Pourquoi pas tout simplement:

monscript.conf:

conf_param1=value
conf_param2=value
...

Et dans monscript:

. /path/to/monscript.conf || exit
use "$conf_param1" "$conf_param2"

?



Probablement que je ne me suis pas expliqué assez clairement.

Tant qu'il n'y a qu'une simple liste de variable, c'est facile ...

Mais prends par exemple smb.conf.

Il y a un chapitre [global] puis un ou plusieurs chapitres "special" où
le [nom] est inscrit entre crochets.
Pour utiliser ce fichier, tu dois donc découper le fichier en chapitres.
Puis quand tu écrit dans le fichier, tu dois replacer la ligne dans le
bon chapitre.

On pourrait du reste ajouter un niveau d'arborescence, voir plusieurs.

[global]
[[section 1]]
param1=value
param2=value
[[section 2]]
param1=value
param2=value
[[special1]]
[[section 1]]
param1=value
param2=value
[[section 2]]
param1=value
param2=value
[special2]
[[section 1]]
param1=value
etc ...

J'ai finit par faire une fonction qui va chercher l'info et une autre
qui va écrire au bon endroit.
Mais c'est un peu con parce que ce genre de besoins me semble courant,
donc j'ai de la peine à immaginer que personne n'a fait un petit binaire
qui gère ça bien mieux que ce que je suis capable de faire.
A ce qu'il me semble c'est un peu la raison d'être du xml, mais les
outils que j'ai trouvé m'ont déçu.

D'où ma question ...

Merci !
--
Nicolas Michel
Publicité
Poster une réponse
Anonyme