curl - утилита командной строки для Linux или Windows

curl - утилита командной строки для Linux или Windows


Что такое curl?

curl - утилита командной строки для Linux или Windows.

Нам часто приходится загружать различные файлы из интернета, например, исполняемые файлы программ, файлы скриптов, архивы с исходниками. Но не всегда это нужно делать через браузер. Во многих ситуациях гораздо проще выполнить все действия через терминал.

Команда curl

Основные опции, которые нам понадобятся. Синтаксис утилиты очень прост:

  • $ curl опции ссылка

Теперь рассмотрим основные опции:

  • -# - отображать простой прогресс-бар во время загрузки

  • -0 - использовать протокол http 1.0

  • -1 - использовать протокол шифрования tlsv1

  • -2 - использовать sslv2

  • -3 - использовать sslv3

  • -4 - использовать ipv4

  • -6 - использовать ipv6

  • -A - указать свой USER_AGENT

  • -b - сохранить Cookie в файл

  • -c - отправить Cookie на сервер из файла

  • -C - продолжить загрузку файла с места разрыва или указанного смещения

  • -m - максимальное время ожидания ответа от сервера

  • -d - отправить данные методом POST

  • -D - сохранить заголовки, возвращенные сервером в файл

  • -e - задать поле Referer-uri, указывает с какого сайта пришел пользователь

  • -E - использовать внешний сертификат SSL

  • -f - не выводить сообщения об ошибках

  • -F - отправить данные в виде формы

  • -G - если эта опция включена, то все данные, указанные в опции -d будут передаваться методом GET

  • -H - передать заголовки на сервер

  • -I - получать только HTTP заголовок, а все содержимое страницы игнорировать

  • -j - прочитать и отправить cookie из файла

  • -J - удалить заголовок из запроса

  • -L - принимать и обрабатывать перенаправления

  • -s - максимальное количество перенаправлений с помощью Location

  • -o - выводить контент страницы в файл

  • -O - сохранять контент в файл с именем страницы или файла на сервере

  • -p - использовать прокси

  • –proto - указать протокол, который нужно использовать

  • -R - сохранять время последнего изменения удаленного файла

  • -s - выводить минимум информации об ошибках

  • -S - выводить сообщения об ошибках

  • -T - загрузить файл на сервер

  • -v - максимально подробный вывод

  • -y - минимальная скорость загрузки

  • -Y - максимальная скорость загрузки

  • -z - скачать файл, только если он был модифицирован позже указанного времени

  • -V - вывести версию

Загрузка файлов

Самая частая задача - это загрузка файлов linux. Скачать файл очень просто. Для этого достаточно передать утилите в параметрах имя файла или html страницы:

  • curl https://raw.githubusercontent.com/curl/curl/master/README.md