Linux-Befehle

So führen Sie mehrere curl-Anfragen parallel aus

So führen Sie mehrere curl-Anfragen parallel aus
Angenommen, Sie möchten aus irgendeinem Grund mehrere curl-Anfragen gleichzeitig ausführen, sagen wir 10 Anfragen gleichzeitig. Wie würdest du vorgehen? In diesem Tutorial zeigen wir, wie Sie mehrere Curly Requests gleichzeitig ausführen können.

Führen Sie parallele Anfragen mit dem Befehl xargs aus

Das xargs Befehl ist ein Befehl in Linux- und UNIX-ähnlichen Betriebssystemen, der Argumente von der Standardeingabe akzeptiert oder übernimmt und dann einen Befehl für jedes Argument ausführt. Einfach ausgedrückt kann der Befehl xargs die Ausgabe eines Befehls annehmen und als Argument eines anderen Befehls verarbeiten.

Im folgenden Befehl nimmt xargs beispielsweise die Argumente auf der linken Seite und erstellt Verzeichnisse mit den Argumentnamen.

$ echo 'Afrika Asien Europa Amerika' | xargs mkdir

Der Befehl xargs kann auch verwendet werden, um mehrere Anfragen gleichzeitig auszuführen. Wenn Sie die Manpages überprüfen, finden Sie einen Abschnitt, der Ihnen die Befehlszeilenargumente wie unten angegeben enthält.

Mit xargs versuchen wir, die Ausführung mehrerer curl-Anfragen gleichzeitig zu befehlen.

Der Linux-Befehl curl ist ein Befehlszeilendienstprogramm, das für die Dateiübertragung verwendet wird. Es bietet Unterstützung für eine Vielzahl von Protokollen wie HTTP, HTTPS, FTP, FTPS, SCP, TFTP und viele mehr.

Angenommen, Sie möchten die HTTP-Header einer Website mit dem curl-Befehl abrufen. Dazu müssen Sie den curl-Befehl mit dem Flag -I gefolgt von der URL wie gezeigt aufrufen the.

$ curl -I "https://linuxways.Netz"

Jetzt haben Sie gerade eine einzelne Lockenanfrage gesendet. Angenommen, Sie möchten 5 parallele Anforderungen ausführen; wie würdest du das anstellen? Die Lösung hierfür besteht darin, den xargs-Befehl zu verwenden, wie er neben dem curl-Befehl gezeigt wird.

$ xargs -I % -P 5 curl -I "https://linuxways.Netz" < <(printf '%s\n' 1… 10)

Das Flag -P bezeichnet die Anzahl der parallelen Anfragen. Die Sektion <(printf '%s\n' 1… 10) druckt die Zahlen 1 - 10 aus und bewirkt, dass der curl-Befehl 10 Mal ausgeführt wird, wobei 5 Anfragen parallel laufen.

Darüber hinaus können Sie den folgenden Befehl ausführen, um das gleiche Ergebnis zu erzielen. Wie im vorherigen Beispiel führt der folgende Befehl den curl-Befehl 10 Mal mit 5 Anfragen parallel aus.

$ seq 1 10 | xargs -n1 -P 5 curl -I "https://linuxways.Netz"

Nehmen wir ein anderes Beispiel. Angenommen, Sie möchten 3 Dateien gleichzeitig mit dem Befehl curl herunterladen download. Der erste Schritt besteht darin, die URLs der Dateien vor dem Herunterladen in einer Textdatei zu speichern. Hier haben wir eine Textdatei zum Download.txt mit den folgenden URLs.

Führen Sie den folgenden Befehl aus, um die Dateien gleichzeitig herunterzuladen:

$ xargs -P 5 -n 1 curl -O < download.txt

Der Befehl kräuselt jede Zeile in der Textdatei 5-mal parallel. Das -n 1 Flag stellt sicher, dass der curl-Befehl bei jeder Ausführung des curl-Befehls eine Zeile liest.

Und so führt man mehrere curl-Requests parallel aus.

So verwenden Sie IRSSI für Internet Relay Chat unter Ubuntu 20.04
Auch wenn Linux, das Terminal und IRC im Allgemeinen für Sie völlig neu sind, sind Ihnen Messaging-Systeme nicht fremd. Sie ermöglichen es Benutzern, ...
Top 9 der besten Ubuntu-basierten Linux-Distributionen
In den letzten Jahren hat sich Ubuntu zum Standardbetriebssystem von privaten und professionellen Benutzern entwickelt. Aufgrund der Popularität der U...
So aktivieren Sie die automatische Anmeldung unter Ubuntu 20.04?
Für die neuesten Versionen von Ubuntu können Benutzer die automatische Anmeldung für die Benutzerfreundlichkeit aktivieren. Wenn diese Option aktivier...