Ich versuche, cURL in einem Skript zu verwenden und dafür zu sorgen , dass der Fortschrittsbalken nicht angezeigt wird.
Ich habe das versucht -s
, -silent
, -S
, und -quiet
Optionen, aber keiner von ihnen arbeiten.
Hier ist ein typischer Befehl, den ich ausprobiert habe:
curl -s http://google.com > temp.html
Ich erhalte den Fortschrittsbalken nur, wenn ich ihn in eine Datei verschiebe, habe also curl -s http://google.com
keinen Fortschrittsbalken, aber curl -s http://google.com > temp.html
.
curl -s http://google.com
schweigt für mich hier. Auf welcher Version von Curl und Linux bist du?curl
undlibcurl
verwenden möchtendpkg -l | grep curl
man curl
für die Ansicht manuelle Seite von Locke, dann drücken Sie/progress
oder/hide progress
oderstop
oder was auch immer Abfrage für die Suche zu bekommen , was Sie wollen. Dann können Sie eine Antwort wie von chmac vorgeschlagen erreichen.Antworten:
funktioniert für Curl Version 7.19.5 unter Ubuntu 9.10 (kein Fortschrittsbalken). Wenn dies jedoch aus irgendeinem Grund auf Ihrer Plattform nicht funktioniert, können Sie stderr jederzeit nach / dev / null umleiten:
quelle
2>/dev/null
wenn Sie nicht wissen: stackoverflow.com/questions/10508843/what-is-dev-null-21-s
wird Curl nicht "Fortschrittsanzeige oder Fehlermeldungen anzeigen ". (Ich habe nicht versucht, Quellcode zu testen oder zu lesen, um zu sehen, ob das wirklich wahr ist.)In der Curl-Version 7.22.0 unter Ubuntu und 7.24.0 unter OSX besteht die Lösung, um keinen Fortschritt anzuzeigen, aber Fehler anzuzeigen , darin, sowohl
-s
(--silent
) als auch-S
(--show-error
) wie folgt zu verwenden :Dies funktioniert für mich sowohl für umgeleitete Ausgabe als
> /some/file
auch für Pipeline-Ausgabe| less
und direkte Ausgabe an das Terminal.quelle
Ich habe festgestellt, dass mit Curl 7.18.2 der Fortschrittsbalken für den Download nicht ausgeblendet ist mit:
aber es ist mit:
quelle
Ich bin mir nicht sicher, warum es das tut. Versuchen Sie es
-s
mit der-o
Option, die Ausgabedatei anstelle von festzulegen>
.quelle
Unter MacOS 10.13.6 (High Sierra) funktioniert die Option '-ss'. Es ist besonders nützlich in Perl, in einem Befehl wie
curl -ss --get {someURL}
, der offen gesagt viel einfacher ist als jeder der LWP- oder HTTP-Wrapper, um nur den Inhalt einer Website oder Webseite abzurufen.quelle
Vor einiger Zeit wurde ein einfaches Skript geschrieben, um das Scrapping für die Suche nach bestimmten Versionen von jdk durchzuführen:
Sie verwenden es so:
./script.sh https://registry.hub.docker.com/v2/repositories/library/tomcat/tags/
quelle