Toon posts:

IP uit bestandregel extracten?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Beste mensen,

Ik probeer nu al twee dagen om per regel een stel IP's gescheiden door een "-" te filteren. Eigenlijk een IPrange dus.

De input zou alsvolgt kunnen zijn (voorbeeldregel):
code:
1
Dit is een mooie IPRange: hij is van een -goede- vriend van mij:1.2.3.4-1.3.4.5


Zoals je ziet, het is geen kwestie van met 'cut' de field delimiter op ":" zetten en dan het tweede veld uitlezen, er kan namelijk in de beschrijving die voorafgaat aan de range een dubbele punt voorkomen!
Dus nu dacht ik: awk en regexp. Moet toch lukken? Niet dus, ik raak helemaal verdwaald in de wereld van awk en alles wat daaromheen zit. In perl moet het me wel lukken, dat heb ik eerder gedaan, maar dit moet echt in een bash-script! Ik zou de volgende regexp kunnen gebruiken in perl, waarin de stukken tekst tussen ronde haken eruit gehaald zou worden

code:
1
/([0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3})-([0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3}\.[0-9]{1-3})/g


Iemand een tip hoe ik awk hiervoor moet gebruiken, of zit ik helemaal in de verkeerde hoek?

  • cavey
  • Registratie: Augustus 2000
  • Laatst online: 16-12-2025
probeer het eens met sed? en oh, als je in bash gaat werken, ik heb altijd problemen met het escapen van de regexp. (als in, ik vergeet iedere keer of ik dat nou wel of niet moet doen en dan wordt het al gauw een hoop trial-and-error)

Maar als ik het goed begrijp, is je input steeds variabel? Maar het is wel iedere keer zo dat na een : je een ip-range krijgt?

Verwijderd

Topicstarter
Niet dus. Ik kan er niet vanuit gaan dat er na een ":" een IPrange volgt, want in de beschrijving van de range kan ook een ":" voorkomen! Wat is precies het verschil tussen sed en awk?

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

code:
1
2
3
4
echo "foo bar moof: blaat -blaat2- meer blatat:1.2.3.4-1.3.4.5" | perl -pe 's/.*:([0-9.]+)-([0-9.]+)/$1 $2/'


1.2.3.4 1.3.4.5


Geeft output die makkelijk splitbaar is.

[ Voor 57% gewijzigd door CyBeR op 19-12-2004 14:17 . Reden: ingekort ]

All my posts are provided as-is. They come with NO WARRANTY at all.


Verwijderd

Topicstarter
Jo Cyber! Jouw oplossing werkt als een tiet! Bedankt!