[Précédent (date)] [Suivant (date)] [Précédent (sujet)] [Suivant (sujet)] [Index par date] [Index par sujet]
Re: Aide sur un script bash pour modifier un fichier texte
- To:
- Subject: Re: Aide sur un script bash pour modifier un fichier texte
- From: (Michel Beland)
- Date: Fri, 10 Aug 2001 14:30:58 -0400 (EDT)
-
In-reply-to: <[email protected]>
[email protected] (Pierre) writes:
>Je suis à la recherche d'un script bash qui devra écrire dans un
>fichier des variables.
>
>Exemple de fichier à modifier :
>LOGIN = PIERRE
>PASSWORD = TOTO
>TELEPHONE = 08000294
>
>Mon script devra par exemple remplacer le password par TITI.
Si tu as ex sur ta machine, tu peux faire ceci :
#!/bin/bash
ex -s -c "%s/\(^PASSWORD *= *\).*/\1$2/|x" $1
C'est à dire :
% pour tout le fichier
s substitue
/ début de la chaîne à rechercher
\( début d'une expression à rechercher et à remplacer plus tard
^PASSWORD le mot PASSWORD en début de ligne
*= * un nombre arbitraire d'espaces, le signe = et un nombre
arbitraire d'espaces
\) fin d'une expression à rechercher et à remplacer plus tard
..* le reste de la ligne
/ fin de la chaîne à rechercher et début de la chaîne de
substitution
\1 substitue la première expression comprise entre \( et \)
ci-dessus
$2 le deuxième argument du script (en l'occurrence, TITI)
/ fin de la chaîne de substitution
| séparateur de commandes
x sauve le fichier et quitte
$1 nom du fichier où on fait la modification
--
Michel Béland ([email protected]) téléphone : (514) 369-5223
analyste en calcul scientifique télécopieur : (514) 369-3880
RQCHP (Réseau québécois de calcul de haute performance) www.rqchp.qc.ca
CERCA (Centre de recherche en calcul appliqué) www.cerca.umontreal.ca