Rechercher : dans
Par :

[shell] suppression de caractere dans 1 ligne

Dernière réponse le 14 fév 2006 à 16:37:21 tib, le 14 fév 2006 à 10:26:13 
 Signaler ce message aux modérateurs

Bonjour,

voila mon probleme j'ai un fichier avec plusieurs lignes de ce type :

xx xx;yy yyy;eee ee;100 000;20 000


et j'aimerais pouvoir supprimer les espaces mais que pour les 2 derniers champs. J'ai pensé utiliser sed ou tr mais je ne sais/trouve pas si on peut lui demandser de remplacer a partir d'un certain champs dans une ligne..

quelqu'un peut 'il m'aider .?

merci beaucoup

Meilleures réponses pour « [shell] suppression de caractere dans 1 ligne » dans :
Sed - Supprimer une ou plusieurs lignes d'un fichier VoirSupprimer une (ou plusieurs) ligne(s) d'un fichier Syntaxe sed '{[/]||[/]}d' sed '{[/][,][/]d' /.../ = délimiteurs n = le numéro de ligne chaîne = la chaîne contenue dans la...
Sed - Trucs et astuces VoirSubstitution Affichage Suppression Espace et tabulation Ligne vide Intervalle régulier Divers Joindre des lignes Affichage insensible à la casse Substitution Substituer "foo" par "bar" à chaque ligne Seulement la 1ère...

1

jipicy, le 14 fév 2006 à 10:48:38

Salut,

Essaie voir avec :

sed -e "s/ //n"
ou "n" est l'occurence à remplacer dans la chaîne.
Ce qui peut donner ça :
[jp@MDK tmpfs]$ echo "xx xx;yy yyy;eee ee;100 000;20 000" | sed -e "s/ //4"

xx xx;yy yyy;eee ee;100000;20 000

[jp@MDK tmpfs]$ echo "xx xx;yy yyy;eee ee;100 000;20 000" | sed -e "s/ //5" -e "s/ //4"

xx xx;yy yyy;eee ee;100000;20000

[jp@MDK tmpfs]$
;-)) Z'@+...che.
JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé. 

Répondre à jipicy

2

tib, le 14 fév 2006 à 11:51:10

Merci pour ta réponse,

le probleme est que je ne sais pas combien j'aurai d'occurence de l'espace avant l'endroit ou je veux les supprimer... donc je ne peux pas mettre sed -e "s/ //4"

Répondre à tib

3

jipicy, le 14 fév 2006 à 11:54:39

Et les 2 chaînes à remplacer seront-elles toujours en dernière position ? Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé. 

Répondre à jipicy

4

 jipicy, le 14 fév 2006 à 16:37:21

J'avais z'oublié...
Les 2 chaines sont-elles exclusivement numériques ?
Et sont-elles uniques sur la ligne ? Z'@+...che.

JP : Zen, my Nuggets ! ;-)
Le savoir n'est bon que s'il est partagé. 

Répondre à jipicy
Collection CommentÇaMarche.net