Modification sur une chaine de caractères

Fermé
Benoit - 5 sept. 2018 à 11:24
 Benoit - 5 sept. 2018 à 11:47
Bonjour,


Je cherche à modifier une ligne pour avoir que la dernière valeur.

Le problème c'est que j'ai des caractère spéciaux et surtout une valeur qui change dedans .

Voici l’exemple :

192.168.1.1 "show interface serial 1/0" CALLs:35131887 NOCALLs:108338

Je cherche à avoir que le 108338 mais le problème c'est que le CALLs:35131887 change régulièrement de valeur.

Avez vous une idée pour avec sed par exemple pouvoir dire que depuis "192.168.1.1" et "NOCALLs" , tu effaces.


Merci beaucoup.
A voir également:

1 réponse

UnGnU Messages postés 1158 Date d'inscription lundi 2 mai 2016 Statut Contributeur Dernière intervention 22 décembre 2020 157
5 sept. 2018 à 11:38
Salut,

$ cat fich
192.168.1.2 "show interface serial 1/0" CALLs:35131887 NOCALLs:108338
192.168.1.1 "show interface serial 1/0" CALLs:35131887 NOCALLs:108338
192.168.1.3 "show interface serial 1/0" CALLs:35131887 NOCALLs:108338


$ sed '/192.168.1.1.*NOCALLs/{s/\(.*:\).*/\1/}' fich
192.168.1.2 "show interface serial 1/0" CALLs:35131887 NOCALLs:108338
192.168.1.1 "show interface serial 1/0" CALLs:35131887 NOCALLs:
192.168.1.3 "show interface serial 1/0" CALLs:35131887 NOCALLs:108338


;-))
0
Salut,

Merci pour ta réponse, la commande me retourne cela :

# sed '/192.168.1.1.*NOCALLs/{s/\(.*:\).*/\1/}' fich
192.168.1.2 "show interface serial 1/0" CALLs:35131887 NOCALLs:108338
192.168.1.1 "show interface serial 1/0" CALLs:35131887 NOCALLs:
192.168.1.3 "show interface serial 1/0" CALLs:35131887 NOCALLs:108338


J'aimerais avoir que le 108338
0
C'est bon j'ai réussi grâce à toi, c'est bien le .* dans sed que je cherchais ! Merci beaucoup !
0
sed 's/192.168.1.1.*NOCALLs://g' fich
0