====== Команда curl ======
----
===== О команде curl =====
Команда curl (Client URL) - Это служебная утилита командной строки, позволяющая взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
Утилита поддерживает протоколы: FTP, FTPS, HTTP, HTTPS, TFTP, SCP, SFTP, Telnet, DICT, LDAP, а также POP3, IMAP и SMTP. Также curl поддерживает сертификаты HTTPS, методы HTTP POST, HTTP PUT, загрузку на FTP, загрузку через формы HTTP.
===== Опции curl =====
* **--help** - Показать справочную информацию по команде
* **--version** - Показать информацию о версии curl
* **-d** - Отправляет данные в теле запроса
* **-i** - Показывает заголовки вместе с содержимым ответа
* **-k** - Игнорирует ошибки SSL-сертификатов (Небезопасно)
* **-o** - Сохраняет файл под заданным именем
* **-O** - Сохраняет файл с исходным именем из URL
* **-u user:pass** - Позволяет передает данные для авторизации
* **-v** - Показывает подробную информацию о процессе обмена данными
* **-C -** - Позволяет возобновить прерванную загрузку файла
* **-x** - Позволяет использовать указанный прокси-сервер
* **-U** - Позволяет указать логин и пароль для прокси-сервера
* **--limit-rate** - Позволяет ограничить скорость передачи данных (загрузки и скачивания)
===== Использование curl =====
==== Загрузка файлов ====
Скачать файл, используем опцию **-O**:
curl -O https://releases.ubuntu.com/26.04/ubuntu-26.04-desktop-amd64.iso
Скачать несколько файлов, используем опцию **-O**:
curl -O https://releases.ubuntu.com/26.04/ubuntu-26.04-desktop-amd64.iso -O https://releases.ubuntu.com/26.04/ubuntu-26.04-live-server-amd64.iso
Указать другое имя при скачивании файла, используем опцию **-o**:
curl -o Ubuntu.iso https://releases.ubuntu.com/26.04/ubuntu-26.04-desktop-amd64.iso
Ограничить скорость скачивание файла, используем опцию **--limit-rate**:
curl --limit-rate 256K https://releases.ubuntu.com/26.04/ubuntu-26.04-desktop-amd64.iso -O
==== Возобновление прерванной загрузки ====
Если загрузка файла была прервана по какой-то причине, вы её можете восстановить.
Возобновить загрузку файла, используем опции **-C -** **-O**:
curl -C - -O https://releases.ubuntu.com/26.04/ubuntu-26.04-desktop-amd64.iso
==== Загрузка URL-адреса из файла ====
Создайте текстовый файл:
nano list-url.txt
Список ссылок в файле **list-url.txt**:
https://releases.ubuntu.com/26.04/ubuntu-26.04-desktop-amd64.iso.torrent
https://releases.ubuntu.com/26.04/ubuntu-26.04-live-server-amd64.iso.torrent
https://releases.ubuntu.com/24.04.4/ubuntu-24.04.4-desktop-amd64.iso.torrent
https://releases.ubuntu.com/24.04.4/ubuntu-24.04.4-live-server-amd64.iso.torrent
Скачать список файлов, которые указаны в файле:
xargs -n 1 curl -O < list-url.txt
==== Использование прокси-сервера ====
Скачать файл или несколько файлов с использованием прокси-сервера, используем опции **-x** **-U**:
curl -x 0.0.0.0:0000 -U login:password -O https://releases.ubuntu.com/26.04/ubuntu-26.04-desktop-amd64.iso -O https://releases.ubuntu.com/26.04/ubuntu-26.04-live-server-amd64.iso
Если прокси не требует логина пароля, то вы можете пропустить этот шаг.