OT: grep help
Giorgos Keramidas
keramida at ceid.upatras.gr
Wed Mar 25 21:10:50 EET 2009
On Wed, 25 Mar 2009 18:29:53 +0000, Alexandros Papadopoulos <alexandros.papadopoulos at member.fsf.org> wrote:
> Φίλτατοι, τη βοήθειά σας:
>
> Έχω ένα μεγάλο αρχείο ASCII (mediawiki database dump), μέσα από το
> οποίο θέλω να ρουφήξω όλα τα URLs.
>
> Ένα απλό grep δε κάνει και πολλά, μιας και επιστρέφει τη "γραμμή", η
> οποία έχει 500000 χαρακτήρες έκαστη, μπορεί να είναι ολόκληρο άρθρο
> κτλ... Πώς μπορώ να πω στο grep να βρει όλες τις λέξεις που ξεκινούν
> από http://blah και να μου επιστρέψει όλα τα matching strings μέχρι το
> επόμενο space, ώστε να έχω μια ωραία λίστα με τα URLs μόνο?
Τα URIs μπορεί να μην τελειώνουν σε space αλλά σε '\'' ή σε '"'. Αλλά
μπορείς, συνήθως να κάνεις θαύματα με μια μικρή παραλλαγή στο sed που
έδειξε ο Μανώλης. Προσωπικά την έχω καταβρεί με το '\b' της Perl σε
κάτι τέτοιες περιπτώσεις:
$ cat foo
<a href="http://foo">bar</a><a href="http://koko">lala</a>
$ perl -ne '@m = (/\b(http:[^"'\'']+)/g); print join("\n", @m) . "\n"' <
foo
http://foo
http://koko
$
More information about the Linux-greek-users
mailing list