Wenn ich wget "no such address" -o "test.html" schreibe, wird zuerst die test.html erstellt und im Fehlerfall leer gelassen. Wenn Sie -o jedoch nicht verwenden, wird abgewartet, ob der Download erfolgreich war. Erst danach wird die Datei geschrieben.
Ich möchte, dass das letztere Verhalten auch auf -o angewendet wird. Ist das möglich?
Wie in den Kommentaren geschrieben,
wget -O
handelt es sich eher um eine Shell-Umleitung, die unabhängig von Fehlern immer in die Datei schreibt.Sie können
curl -f
stattdessen verwenden:Die lokale Datei wird nicht berührt, wenn beim Abrufen der Datei ein Fehler auftritt.
quelle
Die korrekte Syntax lautet
Beachten Sie das GROSSBUCHSTABEN O. Die Option -o weist wget an, eine Protokolldatei zu schreiben. Deshalb wird sie auch bei Fehlern immer geschrieben.
quelle
Laut Hilfedokument (wget -h) können Sie die Option --spider verwenden, um den Download zu überspringen (Version 1.14).
quelle