Ich verwende Wget, um http-Anfragen an einen neuen Webserver zu senden. Ich mache das, um den MySQL-Cache zu erwärmen. Ich möchte die Dateien nicht speichern, nachdem sie bereitgestellt wurden.
wget -nv -do-not-save-file $url
Kann ich so etwas wie -do-not-save-file
mit wget machen?
Antworten:
Verwenden Sie das
q
Flag für den leisen Modus und teilen Siewget
mit, dass die Ausgabe mitO-
(Großbuchstabe o) an stdout ausgegeben und an umgeleitet werden soll/dev/null
, um die Ausgabe zu verwerfen:wget -qO- $url &> /dev/null
>
Leitet die Anwendungsausgabe (in eine Datei) um. Wenn ein>
kaufmännisches Und vorangestellt ist, leitet die Shell alle Ausgaben (Fehler und Normal) an die Datei rechts von um>
. Wenn Sie kein kaufmännisches Und angeben, wird nur die normale Ausgabe umgeleitet.Wenn die Datei vorhanden ist,
/dev/null
wird alles verworfen.Dies funktioniert auch und einfacher:
quelle
Curl macht das standardmäßig ohne Parameter oder Flags, ich würde es für Ihre Zwecke verwenden:
Bei Curl geht es mehr um Streams und bei wget geht es mehr um das Kopieren von Websites, die auf diesem Vergleich basieren .
quelle
>/dev/null
leitet zuerst std out nach / dev / null um (>/dev/null
steht für1>/dev/null
), die zweite leitet std err nach std out um.>foo
wird interpretiert als1>foo
. Wenn&
eine Umleitung folgt, wird die Shell angewiesen, den früheren Dateideskriptor auf dieselbe Ausgabe wie die spätere umzuleiten . In diesem Fall wird der2>&1
Dateideskriptor 2 (std err) an dieselbe Stelle wie der Dateideskriptor 1 (std out) umgeleitet. Da std out bereits nach / dev / null umgeleitet wird, wird std err auch dort umgeleitet. Sie könnten auch schreiben:1>/dev/null 2>/dev/null
oder2>/dev/null >&2
.curl http://www.example.com
ist ausreichend.Sie können
-O-
(Großbuchstabe o) verwenden, um Inhalte an die Standardausgabe (Standardausgabe) oder an eine Datei (auch spezielle Dateien wie/dev/null
/dev/stderr
/dev/stdout
) umzuleiten.Oder:
Oder: (gleiches Ergebnis wie letzter Befehl)
quelle