Lignes contenant lalala et lilili
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
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 ???
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
-
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]$;-))
-
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 ;-(
-
Ouah tu m'impressionne jipicy
tu connais drolement bien sed !!!
merci beaucoup !! -
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 ...
:)