curl

curl отправляет HTTP/HTTPS-запросы с хостинга, показывает статус, заголовки и тело, передаёт методы, данные, cookie и Basic Auth, а ответ может сохранить или открыть в редакторе.

СетьВерсия 1.2.4Стабильная
lil-terminal

Обзор

Используйте curl, когда важно увидеть, как удалённый узел отвечает именно серверу: проверить API, перенаправления и заголовки, отдельно пройти по IPv4/IPv6 или сохранить ответ без системной оболочки.

Запрос, ответ и место выполнения

curl выполняется на сервере хостинга, а не в локальном браузере. Начните с обычного GET или только заголовков и добавляйте тело, авторизацию и диагностические флаги только по необходимости; -k намеренно отключает проверку сертификата.

Синтаксис

lil-terminal
curl <url|host|me> [options]

Справочник

curl me

использовать текущий хост

curl example.com

отправить GET-запрос и показать статус и тело

curl example.com -I

показать только заголовки финального ответа

curl example.com -s [file]

сохранить ответ; без имени использовать имя из URL

curl example.com -X POST -d "a=1"

отправить тело запроса

-X <method>

задать HTTP-метод

-d <data>

задать тело запроса; по умолчанию POST

-H "Name: value"

добавить заголовок запроса; можно повторять

-u <user>

использовать HTTP Basic-аутентификацию с вводом пароля в скрытом поле

-c '{"name":"value"}'

отправить cookie из объекта JSON

-s [file] | -o <file>

сохранить ответ на хостинге

-a

дописать вместо замены; требуется -s или -o

-i

добавить итоговые заголовки ответа

-I

показать только итоговые заголовки ответа

-j

показать ответ как структурированный JSON

-edit @edit

открыть тело ответа в текстовом редакторе

-code @code

открыть тело ответа в редакторе кода

-t [seconds]

использовать 5 секунд или тайм-аут от 1 до 300

-T

использовать тайм-аут 300 секунд

-4 | -6

использовать IPv4 или IPv6, когда доступен cURL

-r

не переходить по перенаправлениям

-k

разрешить непроверенный TLS-сертификат для диагностики

Интерактивный пример из `/sandbox/`

Запускайте подготовленные примеры прямо на странице. Результат заранее сформирован и показывается в браузере; команды терминала на сервере не выполняются.

Проверить заголовки и сохранить ответ

Установка и управление

Устанавливайте актуальную совместимую версию. Для полного набора возможностей выбирайте Base, для сокращённого — Minimum; уже установленный модуль обновляет команда upgrade.

Base и Minimum — два пакета одного текущего релиза модуля, а не разные версии команды.

Пакет Base

Установить полный пакет с локальной справкой и всеми опубликованными режимами.

install curl
Пакет Minimum

Установить сокращённый пакет без локальной справки; help <cmd> -i открывает актуальную серверную справку.

install curl -m
Точная публичная версия

Установить именно эту опубликованную версию.

install curl -v 1.2.4
Проверить или обновить

Поручить upgrade проверить совместимость и заменить установленный блок только при необходимости.

upgrade curl
Удалить модуль

Удалить блок расширения, не затрагивая ядро и остальные модули.

install curl -u

Примеры

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

Проверить заголовки и сохранить ответ
curl https://example.com -I | curl https://example.com/feed.xml -o sandbox/tmp/feed-copy.xml
HTTP/2 200
content-type: text/html; charset=UTF-8
content-length: 1256

sandbox/tmp/
  feed-copy.xml
Отправить GET-запрос и показать статус и тело
curl https://example.com
HTTP  200
URL   https://example.com/

<!doctype html>
<html>
<head><title>Example Domain</title></head>
<body>…</body>
</html>
Показать только заголовки финального ответа
curl https://example.com -I
HTTP/2 200
content-type: text/html; charset=UTF-8
cache-control: max-age=86000
content-length: 1256
Добавить итоговые заголовки ответа
curl https://example.com -i
HTTP/2 200
content-type: text/html; charset=UTF-8

<!doctype html>
<html>…</html>
Добавить заголовок запроса; можно повторять
curl https://example.com/api -H "Accept: application/json"
HTTP  200
URL   https://example.com/api

{"status":"ok","service":"example"}
Отправить тело запроса
curl https://example.com/api -X POST -d "name=lil"
HTTP  200
URL   https://example.com/api

{"saved":true,"name":"lil"}
Отправить cookie из объекта JSON
curl https://example.com -c '{"theme":"dark"}'
HTTP  200
URL   https://example.com/

<!doctype html>
<html data-theme="dark">…</html>
Сохранить ответ на хостинге
curl https://example.com/feed.xml -o sandbox/tmp/feed.xml
sandbox/tmp/
  feed.xml
Использовать текущий хост
curl me
HTTP  200
URL   https://lil.dog/

<!doctype html>
<html>…</html>
Использовать IPv4 или IPv6, когда доступен cURL
curl https://example.com -6
HTTP  200
URL   https://example.com/

<!doctype html>
<html>…</html>
Не переходить по перенаправлениям
curl https://example.com -r
HTTP  200
URL   https://example.com/

<!doctype html>
<html>…</html>
Использовать IPv4 или IPv6, когда доступен cURL
curl https://example.com -4
HTTP/2 200
content-type: application/json
content-length: 128
Отклонить неподдерживаемый протокол
curl ftp://example.com
Некорректный URL

Связанная документация

Текущая публичная версия

v1.2.42026-08-11

Синхронизация языков

Завершена синхронизация локальной и серверной справки и усилена безопасность локализации curl.