Каково различие между завихрением и wget?

Выполненный make help и Вы будете видеть, для чего каждый нацелен, эффективно делают. Или читайте Makefile.

В целом необходимо работать make clean перед перекомпиляцией для обеспечения Вы создаете программу путем, Вы настроили ее. В зависимости от Makefile, цели не могут быть перекомпилированы, если продукты компиляции/соединения уже найдены. Нормальное Makefile должен включать проверки, которые определяют, необходима ли перекомпиляция. Но если Вы хотите быть на безопасной стороне, просто работать make clean.

273
31.07.2014, 19:42
5 ответов

Основные отличия:

  • wgetглавная сильная сторона по сравнению с curl его способность состоит в том, чтобы загрузить рекурсивно.
  • wget командная строка только. Нет никакого lib или чего-либо, но curlфункции приводятся в действие libcurl.
  • curl поддержки FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS, FILE, POP3, IMAP, SMTP, RTMP и RTSP. wget поддержки HTTP, HTTPS и FTP.
  • curl сборки и работают на большем количестве платформ, чем wget.
  • wget выпущен в соответствии с лицензией копилефта бесплатного программного обеспечения (GPL GNU). curl выпущен в соответствии с бесплатным программным обеспечением разрешающая лицензия (производная MIT).
  • curl загрузка предложений и передающие возможности. wget только плоскость предложений HTTP поддержка POST.

Вы видите больше деталей в следующей ссылке:

завихрение по сравнению с Wget

282
27.01.2020, 19:26
  • 1
    Спасибо, это точно, о чем я задавался вопросом в течение нескольких часов. Я использовал wget, чтобы сделать рекурсивного паука на сайте, кажется остановленным на странице, которая имеет eleventy огромное количество ссылок на него. Действительность, она достигает 100% ЦП на одном ядре. Надеялся, что было что-то лучше, которое делает ту новомодную многоядерную вещь, о которой я слышал. –  Brian Topping 07.06.2015, 13:13
  • 2
    Одна из вещей wget делает, который упущен из этого ответа, http, зеркально отражающий (или 'глобальный поиск') способность. curl очень хорошо в том, что это делает, но это один не предназначается, чтобы использоваться для зеркального отражения веб-сайта. –  jsbillings 26.09.2015, 15:38
  • 3
    Что относительно wput быть псевдонимом, поддерживая ftp. –  mckenzm 23.01.2017, 07:01
  • 4
    Эти фразы не имеют никакого смысла: "и все авторские права присвоены FSF", "совершенно автономно и независим без организационного порождения вообще". Очевидно, что автор ЗАВИХРЕНИЯ является владельцем авторских прав его. Очевидно, что автор wget является владельцем авторских прав его. Но оба свободны как в программном обеспечении свободы. Можно сказать вместо этого, что wget находится под разрешенной для копирования лицензией и ЗАВИХРЕНИЕМ в соответствии с разрешающей лицензией. –  Valerio Bozz 11.04.2018, 14:59

На самом деле существенное различие - это curl включает библиотеку (libcurl), и той библиотекой широко пользуются другие приложения. wget автономно.

20
27.01.2020, 19:26

В нескольких словах:

  • wget - инструмент для загрузки файлов с серверов
  • curl - инструмент, позволяющий обмениваться запросами/ответами с сервером

wget

Wget позволяет загружать файлы только с сервера HTTP/HTTPS или FTP. Вы даете ему ссылку, и он автоматически загружает файл, на который указывает ссылка. Он автоматически строит запрос.

curl

Curl в отличие от wget позволяет строить запрос по своему усмотрению. Это дает большую свободу пользователю и делает потрясающий инструмент отладки. Добавьте к этому ещё одно ключевое отличие: множество поддерживаемых протоколов. Curl поддерживает FTP, FTPS, Gopher, HTTP, HTTPS, SCP, SFTP, TFTP, Telnet , DICT , LDAP , LDAPS , IMAP , POP3 , SMTP , RTSP и URI . Соедините эти два ключевых момента и вы получите удивительный инструмент для тестирования протоколов, настройки тестового сервера и т.д.

Как многие говорят, вы можете загрузить файл с помощью curl. Однако, это полезно только в том случае, если Вы случайно захотите загрузить файл с сервера, который использует протокол, который wget не поддерживает.

.
65
27.01.2020, 19:26

Я провел несколько тестов производительности с помощью wget и curl и получил следующий результат::

Среднее время работы при загрузке проверено 100 раз 1 МБ файл:

wget: 0.844s
cURL: 0.680s

Среднее время работы при загрузке проверено 100 раз 5 МБ Файл:

wget: 1.075s
cURL: 0.863s

Среднее время работы при загрузке проверено 100 раз 10 МБ Файл:

wget: 1.182s
cURL: 1.074s

Размер команды в системе:

wget: 371K
cURL: 182K
16
27.01.2020, 19:26

Основные отличия (1.curlв основном напоминает об общении по различным протоколам, wgetв основном напоминает о загрузке, 2. curlпредоставляет -и основан на -библиотеке libcurl, и другие программы могут использовать то же самое библиотека также wgetявляется автономной )упоминалась в других ответах, но здесь также стоит подчеркнуть еще одно отличие, объясненное в примере.

Еще одна интересная особенность curl, невозможная с wget, — это связь с сокетами UNIX (, т. е. связь даже без сети). Например, мы можем использовать curlдля связи с Docker Engine , используя его сокет в /var/run/docker.sock, чтобы получить список всех извлеченных образов Docker в формате JSON (, полезных для «программирования», в отличие от команда docker imagesCLI, которая хороша для «читабельности»):

curl --unix-socket /var/run/docker.sock http://localhost/images/json | jq
1
10.11.2021, 17:37

Теги

Похожие вопросы