Но это работает только в новых версиях wget, К сожалению у меня есть
старая версия wget (GNU Wget 1.15 построен на darwin14.3.0) и
не могу обновить его. В частности, это wget --show-progress вариант, который не распознается.
На основании того, что я знаю о том, как curl работает и как wget работы, они могут показаться внешне одинаковыми, но нет эквивалента wget рекурсивная функциональность в curl, Чтобы сделать что-то подобное в curl требует некоторого причудливого сценария Bash, чтобы обернуть вокруг curl команда.
Поэтому, когда вы говорите, что не можете обновить wget, что именно ты имеешь ввиду? поскольку wget это инструмент GNU, он не устанавливается вместе с Darwin (который основан на BSD) и часто компилируется из исходного кода. Фактически предоставленные вами сведения о версии явно каким-то образом скомпилированы из исходного кода, поскольку версия «GNU Wget 1.15 построена на darwin14.3.0». Так что, если эта версия wget был установлен что-то вроде Homebrew есть надежда, поскольку если в вашей системе установлен Homebrew, то в вашей системе также должен быть установлен Xcode и соответствующие инструменты / компиляторы командной строки.
Теперь, зная это, вы сможете собрать обновленную версию wget - как 1.16.3 - из источника; минуя установленную Homebrew версию и просто выполняя ее из домашнего каталога. У вас нет root / sudo доступ для этого; вот как вы можете это сделать.
составление wget из источника.
Сначала возьмите сжатый архив от официального wget исходный сайт:
curl -O http://ftp.gnu.org/gnu/wget/wget-1.16.3.tar.gz
Затем распакуйте архив следующим образом:
tar -xzf wget-1.*.tar.gz
Теперь перейдите в распакованный каталог:
cd wget-1.*
Запустить это configure команда:
./configure --with-ssl=openssl
Если как то configure Сбой команды, вам может понадобиться добавить --with-libssl-prefix значение как это:
./configure --with-ssl=openssl --with-libssl-prefix=/usr/lib
Однажды configure процесс завершен, запустите make:
make
Если это работает чисто недавно скомпилированной версии wget 1.16.3 бинарный готов для использования.
Запуск только что скомпилированной версии wget из вашего домашнего каталога.
Сейчас в большинстве инструкций сказано, что вы должны запустить sudo make install получить wget полностью установлен в системе. Но если у вас нет root / sudo привилегии - или вы не хотите обновлять wget версия, которая установлена для всей системы - вы все еще можете запустить wget двоичный файл, который вы только что скомпилировали Во-первых, давайте вернемся из вашего wget исходный каталог вроде этого:
cd ~/
Теперь просто запустите wget 1.16.3 двоичный файл, который вы просто скомпилировали явно, чтобы убедиться, что он работает:
~/wget-1.16.3/src/wget --version
Вывод должен быть примерно таким:
GNU Wget 1.16.3 built on darwin13.4.0.
+digest +https +ipv6 -iri +large-file -nls +ntlm +opie -psl +ssl/openssl
Wgetrc:
/usr/local/etc/wgetrc (system)
Compile:
gcc -DHAVE_CONFIG_H -DSYSTEM_WGETRC="/usr/local/etc/wgetrc"
-DLOCALEDIR="/usr/local/share/locale" -I. -I../lib -I../lib
-DNDEBUG
Link:
gcc -DNDEBUG -liconv -lssl -lcrypto -ldl -lz ftp-opie.o openssl.o
http-ntlm.o ../lib/libgnu.a
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://www.gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Originally written by Hrvoje Niksic <hniksic@xemacs.org>.
Please send bug reports and questions to <bug-wget@gnu.org>.
Что означает, что вы сейчас в бизнесе!
Запуск вашего wget Команда из вашего домашнего каталога.
Так что теперь вы можете запустить wget Команда размещена в вашем вопросе так:
~/wget-1.16.3/src/wget -r --no-parent -nH -nd -q --show-progress --progress=bar:force ftp://ftp.ncdc.noaa.gov/pub/data/swdi/database-csv/v2/
И небольшая настройка - но стоит отметить, - это так много wget варианты имеют полные имена и сокращенные сокращения. Так --no-parent можно сократить до -np чтобы команда выглядела так:
~/wget-1.16.3/src/wget -r -np -nH -nd -q --show-progress --progress=bar:force ftp://ftp.ncdc.noaa.gov/pub/data/swdi/database-csv/v2/
Очистка после использования.
И если вы хотите избавиться от wget 1.16.3 вещи, которые вы только что скомпилировали - поскольку вы говорите, что компьютер, на котором вы работаете, не ваш, - тогда просто удалите wget исходные файлы, с которыми вы только что работали:
rm wget-1.16.3.tar.gz
rm -rf wget-1.16.3
wgetно с тех порwgetне входит в стандартную настройку ядра системы Mac OS X и должна выполняться самостоятельно, кто-то четко скомпилировал ее и установил там. Тем не менее, есть способ для вас, чтобы скомпилировать и запустить более новую версиюwgetбез необходимости обновлятьwgetэто уже установлено в вашей системе. Подробности в моем ответ опубликован ,