![CURL - Speichern mehrerer HTTP-Antworten](https://rvso.com/image/568252/CURL%20-%20Speichern%20mehrerer%20HTTP-Antworten.png)
Ich habe gelernt, dass wir mit CURL mehrere HTTP-Anfragen senden können, indem wir Folgendes tun:
curl -I http://linuxbyexample.co.nr http://lne.blogdns.com/lbe
oder dieses:
xargs curl -I < url-list.txt
Wie können wir alle Antworten, die wir erhalten, speichern – jede davon in einer anderen Datei?
Antwort1
Sie können die -o
Befehlszeilenoption verwenden, um die Ausgabe in eine Datei statt in stdout zu schreiben. Sie können mehrere -o
s verwenden, z. B.
curl -I http://linuxbyexample.co.nr lbe.co.nr.txt http://lne.blogdns.com/lbe -o lne.txt
Wenn Sie Ihre urls-list.txt wie folgt formatieren
http://serverfault.com -o serverfault.com.txt
http://example.com -o example.com.txt
es sollte wie gewünscht funktionieren.
Antwort2
$ cat urls-list.txt
http://linuxbyexample.co.nr
http://lne.blogdns.com/lbe
$ while read u; do \
curl -I $u -o $(echo $u | sed 's/http:\/\///' | tr '/' '_').header; \
done < urls-list.txt
$ cat linuxbyexample.co.nr.header
HTTP/1.1 200 OK
Date: Thu, 24 Nov 2011 03:15:19 GMT
Server: LiteSpeed
Connection: close
X-Powered-By: PHP/5.2.10
Content-Type: text/html
X-Powered-By: PleskLin