Pages : 1
#1 Le 13/08/2008, à 09:47
- P'titeScrarabée
[Résolu] - sed d'une variable
Bonjour à tous,
J'aimerais remplacer un caractère ou un mot dans une variable (chaine) sans passer par un fichier.
Exemple : je voudrais remplacer "a" par "A"
$variable = "abcde, afghij"
sed "s/a/A/g" << $variable
echo $variable > fichier
J'obtiens à l'écran
echo abcde, afghij > fichier
Alors que je voudrais plus tôt que le fichier soit créé, contenant Abcde, Afghij
Je vous remercie d'avance
#2 Le 13/08/2008, à 09:54
- P'titeScrarabée
Re : [Résolu] - sed d'une variable
Bonjour à tous,
J'aimerais remplacer un caractère ou un mot dans une variable (chaine) sans passer par un fichier.
Exemple : je voudrais remplacer "a" par "A"
$variable = "abcde, afghij" sed "s/a/A/g" << $variable echo $variable > fichier
J'obtiens à l'écran
echo Abcde, Afghij > fichierAlors que je voudrais plus tôt que le fichier soit créé, contenant Abcde, Afghij
Je vous remercie d'avance
#3 Le 13/08/2008, à 10:05
- Totor
Re : [Résolu] - sed d'une variable
il y a 2/3 erreurs de syntaxe dans ton script :
1. ta ligne d'affectation est erronée : il ne doit pas y avoir d'espace de part et d'autre le =
2.
$variable="abcde, afghij"
signifie : la variable dont le nom est le contenu de la variable variable prend la valeur "abcde, afghij". La bonne syntaxe est :
variable="abcde, afghij"
3. << permet de faire le lien avec le contenu d'un fichier et non d'une variable.
Il te faut plutôt passer par un echo:
echo $variable|sed 's/a/A/g' > $fichier
-- Lucid Lynx --
Hors ligne
#4 Le 13/08/2008, à 10:21
- P'titeScarabée
Re : [Résolu] - sed d'une variable
il y a 2/3 erreurs de syntaxe dans ton script :
1. ta ligne d'affectation est erronée : il ne doit pas y avoir d'espace de part et d'autre le =
2.$variable="abcde, afghij"
signifie : la variable dont le nom est le contenu de la variable variable prend la valeur "abcde, afghij". La bonne syntaxe est :
variable="abcde, afghij"
3. << permet de faire le lien avec le contenu d'un fichier et non d'une variable.
Il te faut plutôt passer par un echo:echo $variable|sed 's/a/A/g' > $fichier
Impeccable, ca marche !
Merci beaucoup
#5 Le 13/08/2008, à 10:28
- P'titeScarabée
Re : [Résolu] - sed d'une variable
Je viens de constater que la variable n'a pas été modifiée.
Comment fait-on si on voudrait vraiment la modifier svp ?
#6 Le 13/08/2008, à 10:33
- Totor
Re : [Résolu] - sed d'une variable
variable="ce que tu veux"
<traitement>
variable=$(echo ${variable}|sed 's/a/A/g')
echo ${variable}>${fichier}
EDIT :
où encore :
variable="ce que tu veux"
<traitement>
variable=$(echo ${variable}|sed 's/a/A/g'|tee ${fichier})
et si tu souhaites concaténer au fichier : ajoute l'option -a à la commande tee
Note: n'oublie pas de mettre [résolu]
Dernière modification par Totor (Le 13/08/2008, à 10:37)
-- Lucid Lynx --
Hors ligne
#7 Le 13/08/2008, à 10:48
- P'titeScarabée
Re : [Résolu] - sed d'une variable
Merci Totor.
J'ai posté sans me connecter, pas vu la possibilité de modifier le titre.
Merci au modo de mettre [résolu]
Pages : 1