cURL очень полезный инструмент командной строки для передачи данных от или к серверу. Curl поддерживает различные протоколы, такие как FILE, HTTP, HTTPS, IMAP, IMAPS, LDAP, DICT, LDAPS, TELNET, FTP, FTPS, GOPHER, RTMP, RTSP, SCP, SFTP, POP3, POP3S, SMB, SMBS, SMTP, SMTPS, и TFTP.
cURL может быть использован самыми различными и интересными способами. С помощью этого инструмента вы можете скачать, загрузить файлы и управлять ими, проверить свой адрес электронной почты, или даже обновлять свой статус на некоторых веб — сайтах социальных медиа или проверить погоду на улице. В этой статье мы рассмотрим пять наиболее полезных и основных видов использования инструмента cURL на любой Linux VPS.
1. Проверьте URL
Одним из наиболее распространенных и простейших применений cURL печатает саму команду, а затем URL, который вы хотите проверить
curl https://domain.ru
Эта команда будет отображать содержимое URL на вашем терминале
2. Сохраните вывод URL в файл
Выход команды cURL может легко сохранить в файл, добавив опцию -o в команде, как показано ниже
curl -o website https://domain.ru % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 41793 0 41793 0 0 275k 0 --:--:-- --:--:-- --:--:-- 2.9M
В этом примере, вывод будет сохранен в файл с именем ‘website’ в текущем рабочем каталоге.
3. Загрузка файлов с помощью Curl
Вы можете скачивать файлы при помощи Curl, путем добавления опции -o к команде. Он используется для сохранения файлов на локальном сервере с теми же именами, как и на удаленном сервере
curl -O https://domain.ru/file.zip
В этом примере архив ‘file.zip’ будет загружен в текущий рабочий каталог.
Вы также можете загрузить файл с другим именем, добавив опцию -o к cURL.
curl -o archive.zip https://domain.ru/file.zip
Таким образом, архив ‘file.zip’ будет загружен и сохранен как ‘Archive.zip’.
cURL может быть также использован для загрузки нескольких файлов одновременно, как показано в приведенном ниже примере
curl -O https://domain.ru/file.zip -O https://domain.com/file2.zip
Curl также можно использовать для загрузки файлов надежно через SSH с помощью следующей команды
curl -u user sftp://server.domain.ru/path/to/file
Обратите внимание, что вы должны использовать полный путь к файлу, который требуется загрузить
4. Взять информацию из заголовка HTTP веб-сайта
Вы можете легко получить информацию заголовка HTTP из любого веб-сайта, добавив опцию -I (‘i’) к cURL.
curl -I http://domain.ru HTTP/1.1 200 OK Date: Sun, 16 Oct 2016 23:37:15 GMT Server: Apache/2.4.23 (Unix) X-Powered-By: PHP/5.6.24 Connection: close Content-Type: text/html; charset=UTF-8
5. Доступ к FTP-серверу
Чтобы получить доступ к FTP-серверу с помощью Curl, надо использовать следующую команду
curl ftp://ftp.domain.ru --user username:password
Curl будет подключаться к FTP-серверу и выведет список всех файлов и каталогов в домашнем каталоге пользователя
Вы можете скачать файл с помощью FTP
curl ftp://ftp.domain.ru/file.zip --user username:password
и загрузить файл на сервер FTP
curl -T file.zip ftp://ftp.domain.ru/ --user username:password
Вы можете проверить страницу Curl вручную, чтобы увидеть все доступные опции cURL и его функциональные возможности
man curl
PS. Если вам понравился этот пост, пожалуйста поделитесь им с друзьями в социальных сетях с помощью кнопок ниже или просто оставьте комментарий. Благодарю.
Вот готовое дополнение к статье — блок “Выводы” и “FAQ”, оформленный в SEO-стиле и логично продолжающий материал про команду curl.
Выводы
Команда curl — это универсальный инструмент для работы с сетевыми запросами, который одинаково полезен как разработчикам, так и системным администраторам. Благодаря поддержке множества протоколов (HTTP, HTTPS, FTP и др.) и гибкой системе параметров, она позволяет решать широкий спектр задач: от простой проверки доступности сайта до сложной интеграции с API и автоматизации процессов.
Разобранные примеры показывают, что даже базового набора ключей достаточно для решения большинства повседневных задач:
- получение данных с сайта
- отправка POST-запросов
- скачивание файлов
- работа с заголовками
- аутентификация
Главное преимущество curl — это простота автоматизации. Его легко использовать в bash-скриптах, cron-задачах и DevOps-пайплайнах, что делает его незаменимым инструментом в реальной инфраструктуре.
Часто задаваемые вопросы
Что такое curl простыми словами?
curl — это консольная утилита для отправки и получения данных по URL. Чаще всего используется для HTTP-запросов, тестирования API и скачивания файлов.
Нужно ли устанавливать curl отдельно?
В большинстве современных систем (Linux, macOS, Windows 10+) curl уже установлен по умолчанию.
Проверить можно командой:
curl --version
В чем разница между curl и браузером?
Браузер — это графический инструмент для просмотра сайтов, а curl работает через командную строку и позволяет:
- отправлять точные HTTP-запросы
- тестировать API
- автоматизировать задачи
Какой самый популярный сценарий использования curl?
Самые частые варианты:
- проверка доступности сайта
- работа с REST API
- скачивание файлов
- отладка HTTP-запросов
Пример:
curl https://example.com
Как отправить POST-запрос через curl?
Используется ключ -X POST и параметр -d:
curl -X POST -d "name=John" https://example.com
Как скачать файл с помощью curl?
curl -O https://example.com/file.zip
Файл сохранится с оригинальным именем.
Как посмотреть только заголовки ответа?
curl -I https://example.com
Полезно для диагностики серверов и проверки редиректов.
Можно ли использовать curl для API?
Да — это один из основных инструментов для тестирования API. С его помощью можно отправлять GET, POST, PUT, DELETE-запросы без написания кода.
Чем curl лучше Postman?
- легче и быстрее (CLI)
- подходит для автоматизации
- не требует GUI
Но Postman удобнее для визуальной работы и сложных сценариев.
Подходит ли curl для автоматизации?
Да, это одно из ключевых применений. curl часто используют в:
- bash-скриптах
- cron-задачах
- CI/CD
- мониторинге