Contenu | Rechercher | Menus

Annonce

Le forum a une nouvelle maison !
Le forum a été migré sur un nouvel hébergement. Si jamais vous trouvez le moindre problème, n'hésitez pas à nous en faire part !
Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

#1 Le 14/11/2012, à 07:56

mikaveli
Membre

Sed et Awk, extraction d'une suite de numéros

Bonjour,

Je suis en la possession d'un server asterisk, et je souhaite effectuer un lot propre contenant uniquement les numéros des appelants dans un fichier A, et les appelés dans un fichier B

Voici un exemple de ligne que asterisk me donne :

Executing [XXXXXXXXXXX@from-internal:3] AGI("SIP/8000-00000250", "agi://localhost/outboundroute.agi?callernum=YYYYYY&calleenum=XXXXXXXXXXX")

les numeros XXXXX et YYYY peuvent etre composés de 8 à 12 chiffres.

Pouvez vous m'aider ?

Hors ligne

#2 Le 14/11/2012, à 08:14

pingouinux
Membre

Re : Sed et Awk, extraction d'une suite de numéros

Bonjour,

sed -r 's/^.*callernum=([0-9]{8,12}).*$/\1/' asterisk.out >A
sed -r 's/^.*calleenum=([0-9]{8,12}).*$/\1/' asterisk.out >B

Hors ligne

#3 Le 14/11/2012, à 09:22

iuchiban
Membre

Re : Sed et Awk, extraction d'une suite de numéros

@pingouinux : ne faut-il pas backslasher les ( ) de "sauvegarde" du pattern ?


C'est depuis que Chuck Norris a laissé la vie sauve à un manchot que l'on dit que Linux est libre.

Chuck Norris n'a pas besoin d'éditer son premier message pour ajouter [Résolu]. Chuck Norris est toujours [Résolu], quoi qu'il arrive.

Hors ligne

#4 Le 14/11/2012, à 09:29

pingouinux
Membre

Re : Sed et Awk, extraction d'une suite de numéros

iuchiban #3 a écrit :

ne faut-il pas backslasher les ( ) de "sauvegarde" du pattern ?

Non, pas avec l'option -r de sed.

Hors ligne

#5 Le 14/11/2012, à 15:28

nesthib
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne

#6 Le 14/11/2012, à 18:25

Totor
Membre

Re : Sed et Awk, extraction d'une suite de numéros

nesthib a écrit :

une variante :

awk -F '[[@="&]' '{print $2"\n"$7}'

plus précisément :

awk -F '[[@="&]' '{print $2 >> fichierX ;  print $7 >> fichierY}' asterisk.out

-- Lucid Lynx --

Hors ligne

#7 Le 15/11/2012, à 01:38

nesthib
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn

Hors ligne