Awk

Résolu/Fermé
herysoa Messages postés 9 Date d'inscription lundi 28 juillet 2014 Statut Membre Dernière intervention 13 novembre 2014 - 28 juil. 2014 à 08:35
herysoa Messages postés 9 Date d'inscription lundi 28 juillet 2014 Statut Membre Dernière intervention 13 novembre 2014 - 28 juil. 2014 à 14:37
Bonjour,

J'ai des msisdn avec 2613207xxxx et Je voudrai enlevé le 261 avec awk et ne laissé que le 3207xxxx. Est ce que quelqu'un pourrait m'aider SVP?

4 réponses

Utilisateur anonyme
28 juil. 2014 à 08:55
salut,

pourquoi
awk
?
pourquoi
261
? c'est une valeur fixe ? c'est les 3 premiers chiffres ?
0
herysoa Messages postés 9 Date d'inscription lundi 28 juillet 2014 Statut Membre Dernière intervention 13 novembre 2014
28 juil. 2014 à 10:01
ceci est une MSISDN de mada!
Oui c'est une valeur fixe et je voudrai faire une envoi SMS or le programme ne prend compte que le 32xxxx.
0
gnugo Messages postés 145 Date d'inscription lundi 6 septembre 2010 Statut Membre Dernière intervention 8 décembre 2014 46
28 juil. 2014 à 11:26
Salut,

ça peut être vite fait avec un sed
si tu travailles en ligne par ligne :

$ echo "261dsf564d6fs54
261qggfg
266fgfgdf261
26754542615
2261564
261555555555" | sed 's/^261//g'
dsf564d6fs54
qggfg
266fgfgdf261
26754542615
2261564
555555555
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 408
28 juil. 2014 à 11:47
Salut,

sed 's/^261//g'
Le flag "g" ne sert strictement à rien dans la mesure où il signifie "toutes les occurrences rencontrées sur une même ligne", puisqu'on en cherche qu'une et du fait que l'occurrence recherchée doit être en début de ligne, donc peu de chance d'en rencontrer une autre ;-\
0
gnugo Messages postés 145 Date d'inscription lundi 6 septembre 2010 Statut Membre Dernière intervention 8 décembre 2014 46
28 juil. 2014 à 12:40
oui c'est vrai ! je me demande pourquoi je l'ai mis, une habitude peut être, je suis allé trop vite
0
herysoa Messages postés 9 Date d'inscription lundi 28 juillet 2014 Statut Membre Dernière intervention 13 novembre 2014
28 juil. 2014 à 11:47
oui, j'ai utiliser sed et cela fonctionne mais je voudrai savoir si c'est possible avec awk!
sed 's/2613/3/'
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 408
28 juil. 2014 à 12:05
Salut,

$ cat plop 
261dsf564d6fs54
261qggfg
266fgfgdf261
26754542615
2261564
261555555555

$ awk 'sub(/^261/,//,$0) 1' plop
1dsf564d6fs54
1qggfg
266fgfgdf261
26754542615
2261564
1555555555
0
herysoa Messages postés 9 Date d'inscription lundi 28 juillet 2014 Statut Membre Dernière intervention 13 novembre 2014
28 juil. 2014 à 14:37
merci beaucoup pour votre aide!
0