ubuntuusers.de

Kombination wget und grep/sed

Status: Gelöst | Ubuntu-Version: Ubuntu 14.04 (Trusty Tahr)
Antworten |

sappy

Anmeldungsdatum:
24. Januar 2012

Beiträge: 282

Hi,

ich lade mir mit wget Text-Files herrunter. Greppe (genauer gesagt "sedde") mir später aber aus allen Files nur einen bestimmten Bereich heraus. Habe überlegt, ob ich mir den Schritt womöglich sparen könnte!? Gibt's eine Möglichkeit die Datei beim Laden mit wget schon so zu manipulieren das er mir nur einen Bereich der Datei lädt?

Meine 2 einzelnen Befehle sehen so aus:

1
2
wget -q http://www.xxx.xx/yyy/zzzz/abc.txt
sed -n "/Suche1/,/Suche2/p" abc.txt | grep "^.[A-Z]"

Kann man da irgendwie wget und sed pipen beim Download? Oder hat curl bessere Möglichkeiten? Bin auf eure Meinung gespannt, ob da was geht an Verbesserung.

lg sappy

TNTMaster

Anmeldungsdatum:
30. Juli 2009

Beiträge: 879

Hi

wget -q -O - http://.... | sed ....

leitet die Datei an sed. Dann brauchst du nicht zwischenspeichern.

TNT

Mooi

Anmeldungsdatum:
15. August 2014

Beiträge: 187

... wobei man -q gar nicht braucht, denn die Statusmeldungen von wget gehen über den Fehlerkanal (stderr).

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13204

Mooi schrieb:

... wobei man -q gar nicht braucht, denn die Statusmeldungen von wget gehen über den Fehlerkanal (stderr).

Man möchte sie aber vielleicht trotzdem nicht sehen.

sappy schrieb:

Kann man da irgendwie wget und sed pipen beim Download?

Ja, wie schon gezeigt. Mit curl:

1
curl -s http://www.xxx.xx/yyy/zzzz/abc.txt | sed -n "/Suche1/,/Suche2/p" | grep "^.[A-Z]"

Man könnte das ggf. mit awk noch zu einem Prozess reduzieren:

1
curl -s http://www.xxx.xx/yyy/zzzz/abc.txt | awk "/Suche1/,/Suche2/ {if (/^.[A-Z]/) print}"

Oder hat curl bessere Möglichkeiten? Bin auf eure Meinung gespannt, ob da was geht an Verbesserung.

Groß ist der Unterschied nicht, aber curl ist eigentlich genau für solche Aufgaben gemacht: das Dokument wird standardmäßig auf die Standardausgabe geworfen. wget hat seine Stärken mehr beim Spiegeln ganzer Webseiten. Man findet reichlich Vergleiche, z.B. 🇬🇧 diesen.

Ciao

robert

sappy

(Themenstarter)

Anmeldungsdatum:
24. Januar 2012

Beiträge: 282

Super danke! Klappt wunderbar.

lg

Antworten |