Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/07/2011, 11h03   #1
Invité régulier
 
Inscription : février 2003
Messages : 25
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 25
Points : 7
Points : 7
Par défaut ajout d'une tabulation avec SED

Bonjour,

Après avoir cherché un peu d'information, j'ai pu réaliser un script qui ajoute automatiquement une tabulation+une chaine de caractère après chaque motif trouvé, mais j'ai un bug que j'arrive pas à corriger...

Explication, j'ai un fichier texte (test.txt) avec les lignes suivantes:

Code :
1
2
3
monexempleamoi.pouet
encoreunexemple.pouet
desexemplesencore.pouet
je veux ajouter une tabulation+TOTO pour que cela donne:

Code :
1
2
3
monexempleamoi.pouet	TOTO
encoreunexemple.pouet	TOTO
desexemplesencore.pouet	TOTO
j'utilise la commande suivante:
Code :
sed -i 's/.pouet/.pouet\t\TOTO/g' test.txt
Cela fonctionne globalement bien, mais j'ai de temps en temps des choses comme cela:

Code :
.pouet     TOTOalors.pouet    TOTO
La ligne d'origine étant:



Donc je pense que ma commande SED est foireuse et ne prend pas en compte le caractère "."

Une idée ?

Merci de vos aides
threepwood est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 27/07/2011, 11h22   #2
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Salut,

Il faut protéger le "." (\.) sinon il est vu non pas littéralement comme un point, mais comme n'importe quel caractère

Code :
sed 's/\.pouet/&\tTOTO/'
Pour économiser de l'énergie, comme tu veux remettre le motif matché, autant employer le méta-caractère "&" (esperluette) en remplacement, c'est fait pour, autant s'en servir
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est actuellement connecté   Envoyer un message privé Réponse avec citation 10
Vieux 27/07/2011, 11h30   #3
Invité régulier
 
Inscription : février 2003
Messages : 25
Détails du profil
Informations forums :
Inscription : février 2003
Messages : 25
Points : 7
Points : 7
ça marche impeccable
merci zipe31
threepwood est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h12.


 
 
 
 
Partenaires

Hébergement Web