Lignes contenant lalala et lilili

Résolu/Fermé
Utilisateur anonyme - 11 févr. 2009 à 16:50
 Utilisateur anonyme - 12 févr. 2009 à 17:50
Bonjour,

Je cherche à récuperer les informations issue d'un nmap -sS -p873 de la forme :


Interesting ports on 192.168.1.11:
PORT STATE SERVICE
873/tcp filtered rsync
MAC Address: xx:xx:xx:xx:xx:xx

Interesting ports on 192.168.1.14:
PORT STATE SERVICE
873/tcp closed rsync
MAC Address: xx:xx:xx:xx:xx:xx

Les information utiles que j'ai besoin de traiter sont l'ip et 873/tcp closed rsync, et j'ai besoin de les retrouver sous forme d'un tableau dont chaque ligne ferait :

Interesting ports on 192.168.1.11:873/tcp filtered rsync

il s'agit donc d'extraire 2 lignes de chaque "paragraphe", et de les coller l'une après l'autre

mais apparement grep ne permet pas des fonctions aussi poussée

Est-ce que quelqu'un verrait une solution ???

4 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
11 févr. 2009 à 17:31
Salut,

Une solution avec "sed" :
[tmpfs]$ cat fich
Interesting ports on 192.168.1.11:
PORT STATE SERVICE
873/tcp filtered rsync
MAC Address: xx:xx:xx:xx:xx:xx

Interesting ports on 192.168.1.14:
PORT STATE SERVICE
873/tcp closed rsync
MAC Address: xx:xx:xx:xx:xx:xx

[tmpfs]$ sed -n '/ports/{h;n;n;s/.*\n//;H;x;s/\n//p}' fich
Interesting ports on 192.168.1.11:873/tcp filtered rsync
Interesting ports on 192.168.1.14:873/tcp closed rsync

[tmpfs]$
;-))
1
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
11 févr. 2009 à 18:26
Oups ;-\

Une petite rectification ;
sed -n '/ports/{h;n;n;H;x;s/\n//p}'
est largement suffisant, le "s/.*\n//" du milieu ne sert à rien ;-(
1
Utilisateur anonyme
11 févr. 2009 à 17:34
Ouah tu m'impressionne jipicy


tu connais drolement bien sed !!!

merci beaucoup !!
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
11 févr. 2009 à 17:38
De rien ;-))
0
Utilisateur anonyme
12 févr. 2009 à 17:50
merci pour la doc,

c'est pas mal fait en plus

sed est vraiment polyvalent ; que dis-je , c'est à se demander ce que sed ne peux PAS faire ...


:)
0