éditer un fichier de config en shell - Shell/Batch - Programmation
Marsh Posté le 21-09-2008 à 22:48:18
C'est très bien sed. Tu peux le faire avec vi aussi, mais c'est plus chiant. Ou avec PERL, mais c'est plus du shell pour le coup.
Le plus simple est de créer un fichier template avec des mots-clefs à remplacer à coup de sed pour créer un nouveau fichier de config'.
Marsh Posté le 22-09-2008 à 10:19:23
Suivant ce que tu veux faire, ed peut être plus adapté que sed.
Marsh Posté le 27-09-2008 à 19:36:52
J'aurai genre à éditer un fichier comme ça, donc mettre tous les valeurs en variables et après de les modifier dans le fichier si elles ont changé, mais je trouve que sed est vraiment une usine à gaz pour faire ça, vous aurai pas un truc plus simple?.
Code :
|
Marsh Posté le 27-09-2008 à 21:59:37
hppp a écrit : J'aurai genre à éditer un fichier comme ça, donc mettre tous les valeurs en variables et après de les modifier dans le fichier si elles ont changé, mais je trouve que sed est vraiment une usine à gaz pour faire ça, vous aurai pas un truc plus simple?.
|
Ben en fait, il se trouve que les fichiers de config "à la mode" zindow offrent certains avantages.
Ils sont écrits de cette façon
[chapitre]
item=valeur
item=valeur
item=valeur
item=valeur
[chapitre]
item=valeur
item=valeur
item=valeur
item=valeur
etc
Et ce formalisme commence à être assez bien pris en compte car Python possède une librairie "ConfigParser" qui permet de traiter ce genre de fichier. Bon, c'est plus du shell évidemment mais c'est pour dire qu'il existe certains outils déjà faits.
Sinon pour ta question ben tu peux très bien créer une fonction qui va aller lire et ou écrire l'info que tu souhaites. Certes cette fonction risque d'être une "usine à gaz" mais une fois écrite, tu pourras t'en servir assez facilement quand t'en auras besoin...
Marsh Posté le 27-09-2008 à 22:07:43
Sve@r a écrit : |
Bon bien je vais me plonger dans le développement de cette fonction et y passer quelles que heures
Marsh Posté le 21-09-2008 à 21:37:48
salut a tous
Je voudrai avec un script shell éditer un fichier de config genre apache, en gros je voudrai lancer le script, qu'il demande à l'user les paramètres qu'il veut avec des champs a remplir, ça je sais faire, mais mon problème c'est comment après appliquer les modifs au fichier?
en cherchant un peut j'ai trouvé la commande sed, mais existe t'il d'autres moyens plus propre ou plus simple?
Merci