Jeśli napiszę wget „brak takiego adresu” -o „test.html”, najpierw tworzy test.html, aw przypadku awarii pozostawia go pustym. Jednak gdy nie użyjesz opcji -o, zaczeka, czy pobieranie się powiedzie, a dopiero potem zapisze plik.
Chciałbym, aby to drugie zachowanie dotyczyło również -o, czy to możliwe?
Jak napisano w komentarzach,
wget -O
bardziej przypomina przekierowanie powłoki, które zawsze zapisuje do pliku, niezależnie od błędów.Zamiast tego możesz użyć
curl -f
:Nie dotknie lokalnego pliku, jeśli wystąpi błąd podczas pobierania pliku.
źródło
Prawidłowa składnia to
zwróć uwagę na WIELKIE OZ. Opcje -o każą wget napisać plik dziennika , dlatego zawsze jest zapisywany nawet w przypadku awarii.
źródło
Zgodnie z dokumentem pomocy (wget -h) możesz użyć opcji --spider, aby pominąć pobieranie (wersja 1.14).
źródło