Что такое команда curl в Linux и что вы можете с ней делать?
Linux

Что такое команда curl в Linux и что вы можете с ней делать?

Curl – одна из самых полезных команд в Linux. Здесь собрано все, что вам нужно знать о curl, включая краткое руководство по ее использованию

Команда curl в Linux – это отличный способ автоматизировать процесс загрузки и выгрузки данных с сервера.Curl поддерживает все основные протоколы, такие как HTTP, HTTPS, SFTP, FTP и другие

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

Давайте углубимся и узнаем, что такое curl и как его использовать

Что такое команда curl?

Команда curl была изначально разработана для автоматизации периодической загрузки курсов валют с веб-страницы. Курсы валют в реальном времени предоставляли пользователям IRC эквивалент шведской кроны в долларах США. Популярность curl росла экспоненциально по мере того, как люди начали использовать его повсеместно

Curl – один из старейших и самых популярных проектов с открытым исходным кодом. Его название расшифровывается как Client URL , и он используется в бесчисленных системах по всему миру.Curl находит свое применение в различных областях, таких как веб-разработка и тестирование ошибок

Разработчикам не нужно набирать команды вручную; они могут объединить их в сценарии и использовать для автоматизации сложных операций. Вот несколько примеров использования curl

Установка curl в Linux

Хотя этот популярный пакет предустановлен в большинстве дистрибутивов Linux, вы можете легко загрузить curl, если он еще не установлен на вашем компьютере. Используйте следующие команды для установки curl на вашу машину

В Ubuntu и Debian:

sudo apt install curl

В дистрибутивах на базе RHEL, таких как CentOS и Fedora:

sudo yum install curl

Чтобы установить curl на Arch Linux, введите:

sudo pacman -S curl

Похожие: Как управлять службами systemd с помощью команды systemctl в Linux

Как использовать команду curl

Curl использует следующий синтаксис для всех своих команд:

curl options url

где options и url меняются в зависимости от поставленной задачи.Curl загружает исходный код URL, когда вы не упоминаете опцию/задачу. Последняя версия curl также угадывает протокол— если он не указан в URL— и по умолчанию выбирает HTTP

Вот несколько полезных команд curl для выполнения различных функциональных задач:

Загрузка файла с помощью команды curl

Вы можете загрузить ресурсы через указанный URL с помощью команды curl. У этой команды есть два флага, которые вы можете использовать; -o и -O

  • Команда -O сохраняет файл в текущем каталоге с тем же именем, что и на удаленном сервере.
  • Команда -o , с другой стороны, позволяет выбрать имя и расположение файла.

Вот пример обеих команд:

curl -O https://cdn.jsdelivr.net/npm/vue/dist/vue.js

Файл загружается в текущий каталог, с оригинальным именем, как на удаленном сервере

curl -o newfile.tar.gz http://yourdomain.com/yourfile.tar.gz

Когда вы выполните вышеупомянутую команду, curl скачает и сохранит файл как newfile.tar.gz. Обратите внимание, что в качестве входных данных вам придется указать имя файла и путь к каталогу

Возобновление прерванной загрузки с помощью curl

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

Используйте флаг -C с -o или -O для возобновления прерванной загрузки с помощью curl

curl -C -O http://yourdomain.com/yourfile.tar.gz

Загрузка нескольких файлов с помощью curl

Не существует специальной команды для одновременной загрузки нескольких файлов через curl, но вы можете использовать флаги -o или -O несколько раз в одной команде для достижения аналогичных результатов

Например:

curl -O http://website1.com/file1.iso -O https://website2.com/file2.iso

Вышеупомянутая команда загрузит файлы ISO с обоих URL одновременно в текущий каталог

Получение HTTP-заголовков веб-страницы

HTTP-заголовки содержат важную информацию, такую как агент пользователя, тип содержимого и кодировка. Вы можете запросить HTTP-заголовок URL с помощью флагов -I (заглавная i, а не L) и –http2 :

curl -I --http2 https://www.ubuntu.com/

Выход:

Команда -I показывает различную информацию, включая данные о программном обеспечении сервера, дату, тип содержимого, статус X-cache и многое другое

Укажите максимальную скорость передачи данных

Передача файлов обычно занимает большую часть пропускной способности, ограничивая выполнение других задач

Чтобы решить эту проблему, вы можете установить максимальную скорость передачи для ваших загрузок с помощью curl. Используйте метод –limit-rate , за которым следует модификатор k , m или g (обозначает килобайты, мегабайты или гигабайты соответственно)

Следующая команда ограничивает скорость передачи данных до 1 МБ/с:

curl --limit-rate 1m -O https://dl.google.com/go/go1. 10. 3.linux-amd64.tar.gz

Выход:

Передача файлов через FTP и curl

Вы можете передавать файлы с помощью протокола передачи файлов, обращаясь к любому FTP-серверу с помощью curl.Curl предоставляет вам функциональность для загрузки и выгрузки файлов после подключения к FTP-серверу

Используйте следующую команду для подключения к FTP-серверу:

curl -u username:password ftp://ftp.example.com/

где имя пользователя и пароль – учетные данные для входа на сервер

Вы можете загрузить любой файл с сервера, указав URL файла в следующей команде:

curl -u username:password -O ftp://ftp.example.com/file.tar.gz

Вы также можете загружать файлы на FTP-сервер, используя флаг -T :

curl -T newfile.tar.gz -u username:password ftp://ftp.example.com

Команда -T , за которой следует указанный файл, загружает его на FTP-сервер

Похожие: Как безопасно передавать файлы в Linux с помощью sftp

Использование прокси-серверов с помощью curl

Curl поддерживает множество различных прокси-серверов, таких как HTTPS, HTTP и SOCKS. Вы можете использовать эти прокси для безопасной передачи данных с помощью curl

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

curl -x 192. 168. 44. 1:8888 http://linux.com/

Опция -x подключает вас к порту 8888 на сервере 192. 168. 44. 1. Убедитесь, что вы заменили данные прокси в команде на прокси, к которому вы хотите подключиться. Вышеупомянутый прокси-сервер не требует аутентификации, но вы можете получить доступ к защищенному прокси, используя следующий синтаксис:

curl -U username:password -x 192. 168. 44. 1:8888 http://linux.com/

Укажите имя пользователя и пароль , разделенные знаком C olon рядом с флагом -U

Просмотр сведений о версии

Эта команда может пригодиться, когда вы хотите проверить информацию о версии пакета. Используйте флаг –version для просмотра версии curl:

curl --version

В выводе должна быть указана версия curl, его протоколы и возможности

Определение преимуществ команды curl в Linux

Команда curl оснащена множеством опций для автоматизации передачи данных на вашей машине. Функция возобновления прерванной загрузки и поддержка FTP пригодится в нескольких приложениях

Примеры в этом учебнике призваны показать наиболее популярные команды curl с соответствующими кодами, чтобы помочь вам лучше понять команду curl

Об авторе

Алексей Белоусов

Привет, меня зовут Филипп. Я фрилансер энтузиаст . В свободное время занимаюсь переводом статей и пишу о потребительских технологиях для широкого круга изданий , не переставая питать большую страсть ко всему мобильному =)

Комментировать

Оставить комментарий