Заставьте wget не загружать файлы размером больше X

9

Хорошо, я сдаюсь. Как ограничить размер загружаемых файлов, например, я не хочу, чтобы файлы размером более 2 МБ?

Натаниель
источник

Ответы:

5

Единственный вариант ограничения, который я знаю, который wgetподдерживает, это -Qпереключение на квоту. Это не то, что вам нужно, поскольку оно остановится после комбинированного ограничения всех загруженных вами файлов, а не по отдельности. Трубопроводная ссылка на каждую ссылку отдельно с -Qкоммутатором также не будет работать, как объяснено на странице руководства .

Я не знаю, какую среду вы используете, но сканер поддерживает ограничения размера файла с помощью байтов максимальной длины и работает на платформе Java.

из их руководства пользователя :

  • макс-длина байт

Максимальное количество байтов для загрузки на документ. Будет обрезать файл, как только этот предел будет достигнут.

По умолчанию это значение установлено на чрезвычайно большое значение (в диапазоне эксабайт), которое никогда не будет достигнуто на практике.

Джон Т
источник
Хммм. Хорошо. Это подтвердило многое из того, что я узнал, но в любом случае хороший ответ. Я не знал, что Heritrix урезал файлы вместо того, чтобы пропускать их.
Натаниэль
2

Если речь идет о « загрузке максимум 2 МБ », а не о « загрузке файлов с максимум 2 МБ », вы можете просто ограничить вывод, сохраненный на диск.

wget -O - $url |head -c 1024(с дополнительным > $SaveAsFile) -> сохраняет первый КБ, а остальное усекается.

(достаточно, чтобы увидеть « OK: $ Message », не убивая мою / tmp с кучей сообщений об ошибках с пульта ;-))

Tabakhase
источник
1

Это возможно с помощью сторонних патчей: http://yurichev.com/wget.html

Денис Юричев
источник
Просмотрите этот пост , вы должны.
Джеймс Мерц
@KronoS есть кнопка «Изменить», если вы считаете, что ответ нужно расширить. Лично это выглядит хорошо, как есть, учитывая, что предложение № 1 на связанной странице объясняет новый вариант ...
supervacuo