Содержание

10 команд curl, которые вам следует знать — Разработка на vc.ru

Команда Mail.ru Cloud Solutions перевела статью, автор которой составил краткий справочник часто используемых команд curl для протоколов HTTP/HTTPS. Это не замена официального руководства по cURL, скорее, краткий конспект.

{«id»:155069,»url»:»https:\/\/vc.ru\/dev\/155069-10-komand-curl-kotorye-vam-sleduet-znat»,»title»:»10 \u043a\u043e\u043c\u0430\u043d\u0434 curl, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u043d\u0430\u0442\u044c»,»services»:{«facebook»:{«url»:»https:\/\/www.facebook.com\/sharer\/sharer.php?u=https:\/\/vc.ru\/dev\/155069-10-komand-curl-kotorye-vam-sleduet-znat»,»short_name»:»FB»,»title»:»Facebook»,»width»:600,»height»:450},»vkontakte»:{«url»:»https:\/\/vk.

com\/share.php?url=https:\/\/vc.ru\/dev\/155069-10-komand-curl-kotorye-vam-sleduet-znat&title=10 \u043a\u043e\u043c\u0430\u043d\u0434 curl, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u043d\u0430\u0442\u044c»,»short_name»:»VK»,»title»:»\u0412\u041a\u043e\u043d\u0442\u0430\u043a\u0442\u0435″,»width»:600,»height»:450},»twitter»:{«url»:»https:\/\/twitter.com\/intent\/tweet?url=https:\/\/vc.ru\/dev\/155069-10-komand-curl-kotorye-vam-sleduet-znat&text=10 \u043a\u043e\u043c\u0430\u043d\u0434 curl, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u043d\u0430\u0442\u044c»,»short_name»:»TW»,»title»:»Twitter»,»width»:600,»height»:450},»telegram»:{«url»:»tg:\/\/msg_url?url=https:\/\/vc.ru\/dev\/155069-10-komand-curl-kotorye-vam-sleduet-znat&text=10 \u043a\u043e\u043c\u0430\u043d\u0434 curl, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u043d\u0430\u0442\u044c»,»short_name»:»TG»,»title»:»Telegram»,»width»:600,»height»:450},»odnoklassniki»:{«url»:»http:\/\/connect.
ok.ru\/dk?st.cmd=WidgetSharePreview&service=odnoklassniki&st.shareUrl=https:\/\/vc.ru\/dev\/155069-10-komand-curl-kotorye-vam-sleduet-znat»,»short_name»:»OK»,»title»:»\u041e\u0434\u043d\u043e\u043a\u043b\u0430\u0441\u0441\u043d\u0438\u043a\u0438″,»width»:600,»height»:450},»email»:{«url»:»mailto:?subject=10 \u043a\u043e\u043c\u0430\u043d\u0434 curl, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u043d\u0430\u0442\u044c&body=https:\/\/vc.ru\/dev\/155069-10-komand-curl-kotorye-vam-sleduet-znat»,»short_name»:»Email»,»title»:»\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u043f\u043e\u0447\u0442\u0443″,»width»:600,»height»:450}},»isFavorited»:false}

10 425 просмотров

cURL (расшифровывается как Client URL) — программное обеспечение, которое предоставляет библиотеку libcurl и инструмент командной строки curl. Возможности cURL огромны, во многих опциях легко потеряться.

curl — инструмент для передачи данных с сервера или на него, при этом используется один из поддерживаемых протоколов: DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET и TFTP. Команда предназначена для работы без взаимодействия с пользователем.

Команда curl запускается из командной строки и предустановлена в большинстве дистрибутивов Linux.

Варианты применения:

  • доступ без браузера;
  • внутри shell-скриптов;
  • для тестирования API.

В основном я использовал curl для тестирования API, иногда просто вставляя команды, которые нашел в интернете. Но я хочу разобраться в curl и лучше понять его особенности. Так что поделюсь некоторыми командами, с которыми столкнулся во время работы.

Запрос страницы

Если никакие аргументы не указаны, то команда curl выполняет HTTP-запрос get и отображает статическое содержимое страницы. Оно аналогично тому, что мы видим при просмотре исходного кода в браузере.

Скачивание файла

Есть два варианта этой команды.

  • Скачать файл и сохранить под оригинальным именем (testfile.tar.gz).

curl -O https://testdomain.com/testfile.tar.gz

  • Скачать файл и сохранить под другим именем.

curl -o custom_file.tar.gz https://testdomain.com/testfile.tar.gz

Еще можно скачать несколько файлов одной командой, хотя в мануале так делать не рекомендуют.

curl -O https://testdomain.com/testfile.tar.gz -O https://testdomain.com/testfile2.tar.gz

Получение заголовков HTTP

Если вы хотите посмотреть, какие заголовки отдает сервер, то можно использовать опции -I или -head. Они позволяют получить заголовок без тела документа.

curl -I https://www.google.com HTTP/1.1 200 OK Content-Type: text/html; charset=ISO-8859-1 P3P: CP=»This is not a P3P policy! See g.co/p3phelp for more info.» Date: Thu, 04 Jun 2020 15:07:42 GMT Server: gws X-XSS-Protection: 0 X-Frame-Options: SAMEORIGIN Transfer-Encoding: chunked Expires: Thu, 04 Jun 2020 15:07:42 GMT Cache-Control: private Set-Cookie: 1P_JAR=2020-06-04-15; expires=Sat, 04-Jul-2020 15:07:42 GMT; path=/; domain=.google.com; Secure Set-Cookie: <cookie_info>

Игнорирование ошибки неправильных или самоподписанных сертификатов

Когда вы тестируете веб-приложение или API, то в вашем тестовом окружении могут быть самоподписанные или неправильные SSL-сертификаты. По умолчанию curl верифицирует все сертификаты. Чтобы он не выдавал ошибку о неверных сертификатах и устанавливал соединение для тестирования, используйте опцию -k или -insecure.

curl -k https://localhost/my_test_endpoint

Отправка POST-запроса

Иногда для тестирования API нужно отправить какие-либо данные, обычно это делают через POST-запрос. Если вы делаете POST-запрос при помощи curl, то можете отправить данные либо в виде списка имя=значение, либо в виде JSON.

  • Запрос в виде списка имя=значение.

curl —data «param1=test1&param2=test2» http://test. com

  • Запрос в виде JSON.

curl -H ‘Content-Type: application/json’ —data ‘{«param1″:»test1″,»param2″:»test2»}’ http://www.test.com

Параметр —data эквивалентен -d, оба указывают curl выполнить HTTP POST-запрос.

Указание типа запроса

Если curl не передаются никакие данные, то по умолчанию он выполняет HTTP GET запрос. Но если вам, например, нужно обновить данные, а не пересоздать их заново, то curl поддерживает опции, указывающие тип запроса. Параметры -x или —request позволяют указать тип HTTP-запроса, который используется для сообщения с сервером.

# updating the value of param2 to be test 3 on the record id curl -X ‘PUT’ -d ‘{«param1″:»test1″,»param2″:»test3»}’ \http://test.com/1

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

API защищено авторизацией по логину-паролю — вы можете передать пару логин-пароль, используя параметр -u или —user. Если просто передать логин, то curl запросит пароль в командной строке. Используете параметр несколько раз — для авторизации на сервер будет передано только последнее значение.

curl -u <user:password> https://my-test-api.com/endpoint1

Управление резольвом имен

Вы хотите протестировать API перед развертыванием и перенаправить запрос на тестовую машину — это можно сделать, указав альтернативный резольв имени эндпоинта для данного запроса. Все работает эквивалентно пропиcыванию хоста в /etc/hosts.

curl —resolve www.test.com:80:localhost http://www.test.com/

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

О возможности загрузки файла через curl я узнал недавно. Не был уверен, что это возможно, но, по всей видимости, это так: curl с опцией -F эмулирует отправку заполненной формы, когда пользователь нажимает кнопку отправки. Опция указывает curl передавать данные в виде POST-запроса, используя multipart / form-data Content-Type.

curl -F @field_name=@path/to/local_file

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

curl -F @field_name=@path/to/local_file @field_name=@path/to/local_file_2

Измерение продолжительности соединения

Вы можете использовать опцию -w для отображения информации в stdout после завершения передачи. Она поддерживает отображение набора переменных. Например, можно узнать общее время, которое потребовалось для успешного выполнения запроса. Это удобно, если вам нужно определить время загрузки или скачивания с помощью curl.

curl -w «%{time_total}\n» -o /dev/null -s www.test.com

Это некоторые из опций, которые можно использовать с curl. Надеюсь, информация была вам полезна и статья понравилась.

Что еще почитать:

Что Такое Curl и Как работает Эта Команда

VPS

access_time

8 декабря, 2020

hourglass_empty

4мин. чтения

Что такое Curl? Curl — это сокращение от “Client URL”. Утилита доступна в большинстве систем на основе Unix и предназначена для проверки подключения к URL-адресам. Кроме того команда Curl — отличный инструмент передачи данных. Давайте же узнаем, как ею пользоваться. 

Команда Curl поддерживает следующий список протоколов:

  • HTTP и HTTPS
  • FTP и FTPS
  • IMAP и IMAPS
  • POP3 и POP3S
  • SMB и SMBS
  • SFTP
  • SCP
  • TELNET
  • GOPHER
  • LDAP и LDAPS
  • SMTP и SMTPS

Это наиболее важные поддерживаемые протоколы, но есть и другие. Curl работает на libcurl, которая является бесплатной библиотекой для передачи URL на стороне клиента.

Прокачайте ваш проект, воспользовавшись скидками на VPS-хостинг в Hostinger! Большой выбор планов, как для учебных, так и для крупных коммерческих проектов.

К предложению

Проверка Версии Curl

Прежде чем мы начнём работать с Curl, нам нужно войти в наш VPS. Если вам нужна помощь, ознакомьтесь с этим руководством по SSH.

Сначала давайте проверим её доступною версию, с помощью следующей команды:

curl --version

В выводе вы должны увидеть версию и список поддерживаемых протоколов. Теперь мы можем взглянуть на некоторые примеры команд Curl.

Основной Синтаксис Команды Curl

Итак, давайте узнаем, как пользоваться утилитой. Основной синтаксис Curl выглядит следующим образом:

curl [OPTIONS] [URL]

Самый простой пример использования Curl — для отображения содержимого страницы. Приведённая ниже команда отобразит домашнюю страницу testdomain.com.

curl testdomain.com

Эта команда отобразит полный исходный код домашней страницы домена. Если протокол не указан, Curl интерпретирует его как HTTP.

Команда Curl для Работы с Файлами

Команды Curl могут загружать файлы из удалённой локации. Есть два способа это сделать:

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

Вот пример:

curl -O http://testdomain.com/testfile.tar.gz

Приведённая выше команда сохранит файл как testfile. tar.gz.

curl -o newtestfile.tar.gz http://testdomain.com/testfile.tar.gz

А эта команда сохранит его как newtestfile.tar.gz.

Если по какой-либо причине загрузка будет прервана, вы можете возобновить её с помощью следующей команды:

curl -C - -O  http://testdomain.com/testfile.tar.gz

Curl также позволяет загрузить несколько файлов одновременно. Пример:

curl -O http://testdomain.com/testfile.tar.gz -O http://mydomain.com/myfile.tar.gz

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

Например, если у нас есть файл allUrls.txt, который содержит список всех URL-адресов для загрузки, то приведённый ниже пример выполнит загрузку всех файлов с этих URL.

xargs –n 1 curl -O < allUrls.txt

Команды Curl для HTTP

Curl также можно использовать c прокси-сервером. Если вы находитесь за прокси-сервером, прослушивающим порт 8090 на sampleproxy. com, загрузите файлы, как показано ниже:

curl -x  sampleproxy.com:8090 -U username:password -O http:// testdomain.com/testfile.tar.gz

В приведённом выше примере вы можете выбросить -U username:password, если прокси-сервер не требует метода аутентификации.

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

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

curl -I www.testdomain.com

Используя curl, вы можете сделать запрос GET и POST. Запрос GET будет выглядеть следующим образом:

curl http://mydomain.com

А вот пример запроса POST:

curl –data “text=Hello” https://myDomain.com/firstPage.jsp

Здесь text=Hello — это параметр запроса POST. Такое поведение похоже на HTML-формы.

Вы также можете указать несколько методов HTTP в одной команде curl. Сделайте это, используя опцию –next, например:

curl –data “text=Hello” https://myDomain.com/firstPage.jsp --next https://myDomain.com/displayResult.jsp

Команда содержит запрос POST, за которым следует запрос GET.

Каждый HTTP-запрос содержит агент пользователя, который отправляется как часть запроса. Он указывает информацию о браузере клиента. По умолчанию запрос содержит curl и номер версии в качестве информации об агенте пользователя. Пример вывода показан ниже:

“GET / HTTP/1.1” 200 “_” ”curl/7/29/0”

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

curl -I http://mydomain.com –-user-agent “My new Browser”

Теперь вывод будет выглядеть так:

“GET / HTTP/1.1” 200 “_” ”My new Browser”

Команда Curl и Cookies

Утилиту можно использовать для проверки того, какие файлы cookie загружаются по URL. Допустим вы зашли на https://www.samplewebsite.com, вы можете вывести и сохранить файлы cookie в файл, а затем получить к ним доступ, используя команду cat или редактор Vim.

Вот пример такой команды:

curl --cookie-jar Mycookies.txt https://www.samplewebsite.com /index.html -O

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

curl --cookie Mycookies.txt https://www. samplewebsite.com

Curl и FTP

Утилита поддерживает FTP! Вы можете использовать её для загрузки файлов с удалённого сервера.

curl -u username:password -O ftp://sampleftpserver/testfile.tar.gz

В приведённой выше команде ftp://sampleftpserver — это FTP-сервер, который принимает соединения. Вы можете не указывать имя пользователя и пароль для анонимных FTP-соединений. Введите команду и посмотрите, как заполняется индикатор выполнения.

Вы также можете загружать файлы с помощью этой команды:

curl -u username:password -T testfile. tar.gz ftp://sampleftpserver

Опять же таки, мы можем пропустить имя пользователя и пароль для анонимных FTP-соединений.

Ограничение Скорости Скачивания

Скачивая или загружая данные с помощью Curl, вы не можете знать, насколько большим будет вывод. Вы можете ограничить скорость скачивания, чтобы убедиться, что Curl не ограничивает пропускную способность канала. 

Команда ниже ограничивает скорость скачивания до 100К:

curl --limit-rate 100K http://testdomain.com/samplefile.tar.gz -O

Выводы

В этом руководстве мы рассказали вам, что такое curl, а также, как использовать эту мощную утилиту для скачивания и загрузки данных. Если вы работаете с командной строкой, то вам стоит научиться пользоваться этой командой. На самом деле Curl — это не просто утилита командной строки для Linux или Windows. Она имеет много вариантов применения и поддерживает разные протоколы.

И помните, если вам нужна помощь или вы хотите узнать более сложные команды Curl, вы всегда можете обратиться к руководству, которое должно быть во всех версиях Unix: 

man curl

Мы надеемся, что это руководство станет для вас отправной точкой в использовании этой утилиты. И не забудьте рассказать нам о своём опыте работы с ней в комментариях! 

Разбор a HTTP URL с помощью C/ C++



У меня есть эта строка URL-request, поступающая в качестве ввода:

url=http%3A%2F%2Fwww.ohmert.com%2Fopencar%2Ffetch-examples%2Fexample-fetch.json

Используя C или C++ мне нужно разобрать это и получить результат как

http://www.ohmert.com//opencar/fetch-examples/example-fetch.json

Пожалуйста, ответьте, как я могу достичь этого.

c++ c parsing
Поделиться Источник swati     27 мая 2014 в 12:55

1 ответ


  • разбор JSON с помощью objective C?

    Я провел 1 неделю, изучая цель C. Теперь я совсем запутался в работе с данными. Мой друг дал мне ссылку http://nrj.playsoft.fr/v3/getQuiz.php?udid=23423455&app=2 и попросите меня написать класс для разбора этого JSON. Я понятия не имел, что означает разбор JSON. но я вышел в интернет и…

  • Скачать файл с помощью libcurl в C/C++

    Я создаю приложение (на windows с помощью Dev-C++) и хочу, чтобы оно загрузило файл. Я делаю это с помощью libcurl (я уже установил исходный код с помощью packman). Я нашел рабочий пример (…



2

Взгляните на дополнительные функции …

последний делает именно то, что вы хотите.

Поделиться learnvst     27 мая 2014 в 13:08


Похожие вопросы:


Как unshorten url с помощью C++

Я хочу знать, как unshorten url с помощью C++. Я не знаком с сокетом вещи в C++. Я нашел http://www.feedsocial.com/lab/tinyurls/reverse-all.php , который может сделать это на веб-странице, но не…


Разбор информации a URL из A HTML <a></a> тегов в C

Мое приложение получает как часть своих данных большой форматированный файл html, который содержит большое количество ссылок. Что-то вроде того, что вы получите, если будете искать что-нибудь в…


Разбор XML документа в C#

Дубликат: это дубликат рекомендаций по разбору файлов xml с помощью C#? и многих других (см. https://stackoverflow.com/search?q=c%23+parse+xml ). Пожалуйста, закройте его и не отвечайте. Как вы…


разбор JSON с помощью objective C?

Я провел 1 неделю, изучая цель C. Теперь я совсем запутался в работе с данными. Мой друг дал мне ссылку http://nrj.playsoft.fr/v3/getQuiz.php?udid=23423455&app=2 и попросите меня написать класс…


Скачать файл с помощью libcurl в C/C++

Я создаю приложение (на windows с помощью Dev-C++) и хочу, чтобы оно загрузило файл. Я делаю это с помощью libcurl (я уже установил исходный код с помощью packman). Я нашел рабочий пример (…


разбор строкового значения из A URL с помощью c#

У меня есть строка http://site1/site2/site3 . Я хотел бы получить значение site2 из строки. Каков наилучший алгоритм в C#, чтобы получить значение. (нет regex, потому что это должно быть быстро)….


Разбор HTTP запросов с C

Мне нужно разобрать запрос HTTP в C. Я ранее использовал std::regex для C++, но теперь я должен использовать C. Каков был бы лучший способ проанализировать запрос HTTP с помощью C?


Использование [list a b c] vs {a b c} при создании списка

Какие существуют различия между созданием списка в TCL с помощью: [list a b c] против {a b c} Я ни в коем случае не опытный программист TCL, но единственное различие, с которым я столкнулся до сих…


Разбор параметра внутри URL с помощью C#

Допустим, у меня есть url как http://google.com/index.php?first=asd&second=mnb&third=lkj Как я могу получить второе значение ( mnb ) с помощью c#?


разбор данных JSON из URL с помощью C++

У меня есть база данных MYSQL, связанная с веб-страницей, которая с помощью некоторого кода PHP выталкивает соответствующие данные с помощью JSON на пустую страницу. Я пытаюсь захватить эти данные с…

Кроссовер Citroën C4 Cactus Rip Curl

Свежий ветер приключений и чувство абсолютной свободы – вот какие эмоции испытают посетители стенда Citroën на Женевском автосалоне 2016 года. Специальная версия C4 Cactus Rip Curl стала результатом сотрудничества Citroën с одной из ведущих компаний на рынке товаров для серфинга. Уникальный кроссовер С4 Cactus, автомобиль, созданный для ярких эмоций и незабываемых впечатлений, получит функцию Grip Control для лучшего сцепления с дорогой и целый ряд стилистических элементов, подчеркивающих его активный характер.

С4 Сactus, уже совершивший революцию в сегменте кроссоверов, продолжает открывать новые горизонты. Citroën представляет специальную версию модели, ставшую результатом сотрудничества с всемирно известным брендом товаров для серфинга Rip Curl.

Ассоциация с брендом Rip Curl, который является воплощением серф-культуры с 1969 года, позволяет Citroën еще раз подчеркнуть уникальный характер C4 Cactus, представляя еще более радикальную и яркую версию автомобиля. Citroën предлагает новую, технологически продвинутую и более динамичную модификацию, которая доставит поклонникам модели еще больше удовольствия от активного отдыха. Это полностью соответствует философии бренда Rip Curl, основанного в Торкуэй, Австралия, лишь в нескольких часах езды от культовой бухты Cactus Bay, привлекающей серферов со всего мира.

Rip Curl и Citroën объединяют общие принципы: инновационный подход и стремление к приключениям (то, что на языке Rip Curl называется «the Search», «Поиск» – поиск идеальной волны), способность отправиться в путь когда угодно. Теперь такие путешествия стали гораздо проще и безопаснее, ведь линейка C4 Cactus оснащается системой Grip Control, обеспечивающей превосходное сцепление с дорогой.

Grip Control – уверенность в любой ситуации

Одним из важнейших изменений Citroën C4 Cactus Rip Curl стала установка системы Grip Control, улучшающей проходимость автомобиля на дорогах с различным покрытием. Эффективность системы повышается при установке всесезонных шин для режима «грязь и снег» (Goodyear 205/50 R17 89V). На автомобиль устанавливаются два эффективных  двигателя стандарта Евро-6 в линейке (PureTech 110 S&S и BlueHDi 100 S&S) с механической трансмиссией.  Citroën C4 Cactus Rip Curl – единственная версия модели, для которой доступна система Grip Control.

Grip Control увеличивает сцепление с покрытием во «вседорожном» режиме. Компьютер системы курсовой устойчивости анализирует степень скольжения на передних ведущих колесах и применяет соответствующие алгоритмы управления тягой к особенностям дорожного покрытия. Регулятор управления системы расположен на центральной консоли.

С его помощью можно выбрать один из 5 режимов движения:

> СТАНДАРТНЫЙ (STANDARD): для солнечных прибрежных трасс, горных серпантинов, скоростных шоссе или городских улиц. Этот режим предназначен для обычных дорожных условий с небольшим риском скольжения. В этом режиме система Grip Control сама адаптируется к состоянию дороги.

> ПЕСОК (SAND): позволит добраться до лучших мест для серфинга. Система контролирует пробуксовку передней и задней оси, снижая вероятность застрять на сыпучем грунте. Этот режим работает на скорости до 120 км/ч, после чего автоматически переключается на стандартный. 

> ВСЕДОРОЖНЫЙ (ALL-ROADS): уверенность всюду, где бы вы ни оказались (грязь, влажная трава, грунтовая дорога). Функционально этот режим дублирует особенности дифференциала повышенного трения. Он позволяет автомобилю плавно стартовать с места в сложных условиях, направляя максимальный крутящий момент на колесо, у которого наилучшее сцепление с покрытием. Данный режим работает на скоростях до 80 км/ч, после чего автоматически переключается на стандартный.

> СНЕГ (SNOW): для поездок на самые красивые горнолыжные курорты: система управляет уровнем пробуксовки на каждом из колес в режиме реального времени, позволяя спокойно и уверенно ехать по заснеженным дорогам (при разгоне до 50 км/ч автоматически переходит в стандартный режим.

> ОТКЛЮЧИТЬ (ESP OFF): отключение системы курсовой устойчивости (на скоростях до 50 км/ч).

Благодаря новой системе управления сцеплением с дорожным покрытием Citroën C4 Cactus Rip Curl предлагает водителям и пассажирам принципиально иной опыт управления автомобилем, независимо от маршрута и времени года, что значительно выделяет модель из ряда прочих современных компактных кроссоверов.

Современный и функциональный дизайн

Дизайн нового Citroën C4 Cactus Rip Curl сочетает функциональность с ярким, современным стилем. Динамичный характер экстерьера и интерьера выражает уникальный образ жизни серферов. Отличительными  элементами нового стиля Citroën C4 Cactus Rip Curl являются белые корпуса наружных зеркал и белые рейлинги на крыше, а также ярко-белая вертикальная линия, объединяющая геометрические узоры с логотипом Rip Curl на переднем крыле. Такой же рисунок, но уже горизонтальный, украшает стекло багажной двери автомобиля, с надписью Rip Curl, выполненной в белом цвете. Все эти графические элементы олицетворяют принадлежность автомобиля к миру серфинга.

Citroën C4 Cactus Rip Curl украшен передними и задними защитными панелями алюминиево-серого цвета, подчеркивающими характер автомобиля, созданного для путешествий. Функциональные и стильные накладки Airbump® придают  модели индивидуальность и защищают кузов от внешних повреждений. Покупатели смогут выбрать накладки в различных цветах – черном, песчаном, шоколадном и сером. На момент премьеры Citroën C4 Cactus Rip Curl будет доступен в пяти вариантах окраски кузова: Olive Brown/Obsidian Black/Aden Red/Aluminium Grey и Mother-of-Pearl White. К концу года Citroën представит уникальную цветовую схему Baltic Blue, которая станет подлинным украшением динамичных форм C4 Cactus Rip Curl.

Салон Citroën C4 Cactus Rip Curl украшен акцентами цвета Pulp Orange. Ремни безопасности также получили этот динамичный, яркий оттенок, который создает привлекательный контраст с обивкой сидений: тканью Mica Grey или опциональной отделкой кожа/ткань Mixed Leather Back/Black Fabric. Такие же яркие вкрапления можно встретить в отделке  ковриков, на которых красуется логотип Rip Curl. Продолжая тему контрастов, теперь уже с цветом Stone Grey, дизайнеры C4 Cactus Rip Curl выполнили лицевые панели динамиков в цвете Pulp Orange. Дизайн передней панели лаконичен — она не разделена на кластеры, все элементы управления собраны вокруг 7-дюймового сенсорного планшета. Перчаточный ящик TOP BOX выполнен в стиле старинного саквояжа и украшен ремнями и шипами.

Комплектация C4 Cactus Rip Curl базируется на Citroën C4 Cactus «Shine» (3ий уровень оснащения). Автомобиль получил тот же набор стандартного оборудования, и множество других технологических особенностей (в зависимости от рынка): систему помощи при парковке, автоматический климат-контроль, фары с датчиками света и щетки стеклоочистителя с датчиками дождя, навигационную систему, аудиосистему с 6 динамиками и поддержкой MP3, круиз-контроль с ограничителем скорости, дополнительную тонировку стекол и другие опции. Чтобы пассажиры могли в полной мере насладиться каждой поездкой, Citroën C4 Cactus Rip Curl укомплектован (в зависимости от рынка) стеклянной панорамной крышей, благодаря которой салон наполняется естественным светом. Специальная термальная защита стекла позволяет избежать перегрева салона и нежелательных эффектов прямых солнечных лучей.

Премьера Citroën C4 Cactus Rip Curl состоится на стенде Citroën в 6 зале Женевского автосалона, который пройдет с 1 по 13 марта 2016 года. Продажи автомобиля стартуют в первой половине 2016 года.

curl up — Перевод на русский — примеры английский

Предложения: to curl up

На основании Вашего запроса эти примеры могут содержать грубую лексику.

На основании Вашего запроса эти примеры могут содержать разговорную лексику.

All I wanted to do was curl up and weep.

I just want to finish cleaning, curl up on the couch, and watch some TV.

Я хочу закончить уборку, свернуться на диване и посмотреть телевизор.

And the body needs oxygen, or else the cells curl up like old leaves.

Телу нужен кислород, иначе его клетки свернутся как старые листья.

I just want to go home and… curl up in a ball and maybe cry a little more.

Я просто хочу пойти домой и… свернуться в клубок и, возможно, немного поплакать.

And if you have a problem with that, then you can get in the van and curl up next to him.

И если у тебя с этим проблемы, то можешь забраться в машину, и свернуться с ним рядом.

I wanted to scream and bolt the door, curl up in my little bed and sleep and sleep.

Мне хотелось закричать, запереть дверь, свернуться в моей постельке и спать, спать.

You can either curl up in a ball and die, like we thought Cyndee did that time, or you can stand up and say, We’re different.

Ты можешь свернуться в клубок и умереть, однажды мы думали, что так произошло с Синди, а можешь встать и сказать: Мы другие.

Why would he tie a guy up, leave him to die, and then curl up on the floor to go to sleep?

Зачем ему связывать парня, оставлять его умирать, а потом свернуться на полу и заснуть?

Then you could really nest here. Curl up like a hedgehog.

Look, I know you all curl up on your futons at night dreaming of cracking a real life medical mystery so that some doctor/ supermodel will want to touch your eruption button.

Я знаю, что все вы, свернувшись ночью на своих перинах, мечтаете о разгадке настоящей медицинской тайны, что придет врач — супермодель и разберется, в чем причина сыпи.

I wish I could just stick around here… curl up with a good book.

He wouldn’t want me to just curl up and stop doing mine.

I can always curl up with a good book.

I love the way your eyes curl up at me.

Мне нравится как ты сейчас смотришь на меня. Извини.

You make us beg for a filthy pillow that a barnyard rat wouldn’t curl up and die in.

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

They’re warm, they curl up next to you in bed.

Eventually, you want someone you can curl up with.

It’s an unpleasant place called curl up and die.

Это неприятное место под названием «Загнись и помри».

And we’ll just curl up like trusting children under your vigilant gaze.

Or I’ll curl up and die here.

MEO Rip Curl Pro Portugal

MEO Rip Curl Pro Portugal

Популярные мероприятия

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

В состязании «Rip Curl Pro Portugal», которое является постоянным этапом «WSL World Surf League Tour», принимают участие лучшие серфисты мира. Оно проводится в Пенише и Кашкайше, где в это время года самые подходящие условия для соревнований по серфингу.

Серфистам хорошо знакомы названия выбранных пляжей – Каркавелуш, Гиншу и особенно Супертубуш (супертрубы), известный своими высокими трубообразными волнами.

Дата подлежит уточнению.

Контакты

ru

Мнение пользователей

Для того, чтобы оставить комментарий, необходимо пройти логин.



Как добраться

Тип транспорта На автомобиле или мотоциклеПешком

Пункт отправления …AbrantesÁguedaAguiar da BeiraAlandroalAlbergaria-a-VelhaAlbufeiraAlcácer do SalAlcanenaAlcobaçaAlcocheteAlcoutimAlenquerAlfândega da FéAlijóAljezurAljustrelAlmadaAlmancilAlmeidaAlmeirimAlmodôvarAlpiarçaAlteAlter do ChãoAlvaiázereAlvitoAmadoraAmaranteAmaresAnadiaAngra do HeroísmoAnsiãoArcos de ValdevezArganilArmação de PêraArmamarAroucaArraiolosArronchesArruda dos VinhosAveiroAvisAzambujaBaiãoBarcelosBarrancosBarreiroBatalhaBejaBelmonteBenaventeBombarralBorbaBoticasBragaBragançaBuçacoCabeceiras de BastoCadavalCaldas da RainhaCaminhaCampo MaiorCantanhedeCarrazeda de AnsiãesCarregal do SalCartaxoCascaisCastanheira de PêraCastelo BrancoCastelo de PaivaCastelo de VideCastelo MendoCastelo NovoCastelo RodrigoCastro DaireCastro MarimCastro VerdeCelorico da BeiraCelorico de BastoChamuscaChavesCinfãesCoimbraCondeixa-a-NovaConímbrigaConstânciaCorucheCosta de CaparicaCovilhãCratoCubaCuriaElvasEntroncamentoEriceiraEspinhoEsposendeEstarrejaEstorilEstremozÉvoraFafeFaroFátimaFelgueirasFerreira do AlentejoFerreira do ZêzereFigueira da FozFigueira de Castelo RodrigoFigueiró dos VinhosFornos de AlgodresFreixo de Espada à CintaFronteiraFunchalFundãoGaviãoGóisGolegãGondomarGouveiaGrândolaGuardaGuimarãesHortaIdanha-a-NovaIdanha-a-VelhaIlha da GraciosaIlha da MadeiraIlha das FloresIlha de Porto SantoIlha de Santa MariaIlha de São JorgeIlha de São MiguelIlha do CorvoIlha do FaialIlha do PicoIlha TerceiraÍlhavoLagoaLagosLamegoLeiriaLinhares da BeiraLisboaLouléLouresLourinhãLousãLousadaLusoMaçãoMacedo de CavaleirosMafraMaiaMangualdeManteigasMarco de CanavesesMarialvaMarinha GrandeMarvãoMatosinhosMealhadaMedaMelgaçoMelidesMértolaMesão FrioMiraMiranda do CorvoMiranda do DouroMirandelaMogadouroMoimenta da BeiraMoitaMoledo do MinhoMonçãoMonchiqueMondim de BastoMonforteMonfortinhoMonsantoMonsarazMontalegreMonte GordoMonte RealMontemor-o-NovoMontemor-o-VelhoMontijoMoraMortáguaMouraMourãoMurçaMurtosaNazaréNelasNisaÓbidosOdemiraOdivelasOeirasOleirosOlhãoOliveira de AzeméisOliveira de FradesOliveira do BairroOliveira do HospitalOurémOuriqueOvarPaços de FerreiraPalmelaPampilhosa da SerraParedesParedes de CouraPedrogão GrandePenacovaPenafielPenalva do CasteloPenamacorPenedonoPenelaPenichePeso da RéguaPinhãoPinhelPiódãoPombalPonta DelgadaPonte da BarcaPonte de LimaPonte de SorPortalegrePortelPortimãoPortoPorto CovoPorto de MósPóvoa de LanhosoPóvoa de VarzimProença-a-NovaQuarteiraRedondoReguengos de MonsarazResendeRibeira de PenaRio MaiorSabrosaSabugalSagresSalvaterra de MagosSanta Comba DãoSanta Maria da FeiraSanta Marta de PenaguiãoSantarémSantiago do CacémSanto TirsoSão Brás de AlportelSão João da MadeiraSão João da PesqueiraSão Martinho do PortoSão Pedro do SulSardoalSátãoSeiaSeixalSernancelheSerpaSertãSesimbraSetúbalSever do VougaSilvesSinesSintraSobral de Monte AgraçoSortelhaSoureSouselTábuaTabuaçoTaroucaTaviraTerras de BouroTomarTondelaTorre de MoncorvoTorres NovasTorres VedrasTrancosoTrofaTróiaVagosVale de CambraValençaValongoValpaçosVendas NovasViana do AlentejoViana do CasteloVidagoVidigueiraVieira do MinhoVila de ReiVila do BispoVila do CondeVila FlorVila Franca de XiraVila Nova da BarquinhaVila Nova de CerveiraVila Nova de FamalicãoVila Nova de Foz CôaVila Nova de GaiaVila Nova de MilfontesVila Nova de PaivaVila Nova de PoiaresVila Pouca de AguiarVila Praia de ÂncoraVila RealVila Real de Santo AntónioVila Velha de RódãoVila VerdeVila ViçosaVilamouraVimiosoVinhaisViseuVizelaVouzelaZambujeira do Mar

Рассчитать

É necessário seleccionar um ponto de partida.



Материалы по теме

Sleek & Curl Expert Straightener

Надоело выбирать между гладкими прямыми волосами и желанными локонами? Тогда Sleek & Curl Expert станет вашим новым любимым выпрямителем для укладки. Созданный для того, чтобы вы без особых усилий могли создавать прямой стиль или укладку с локонами: ваши прически никогда не будут одинаковыми каждый день.

Черные титановые керамические пластины выпрямителя Sleek & Curl Expert содержат в 10 раз больше керамики* для 2х более плавного скольжения. Легко скользя по волосам, пластины позволят вам выпрямить или завить волосы, не боясь зацепок.

Благодаря сверхбыстрому времени нагрева за 15 секунд, вам не придется долго ждать, прежде чем вы начнете экспериментировать с различными стилями. Просто выберите идеальную температуру для вашего типа волос в диапазоне от 150 °C до 230 °C на цифровом дисплее, а затем используйте функцию блокировки, чтобы зафиксировать температуру от случайного изменения. Если вам нужно немного больше тепла, чтобы зафиксировать ваш внешний вид, вы можете использовать функцию повышения температуры.

Удлиненные пластины 110мм позволяют захватить большую прядь волос для выпрямления. Специальный изогнутый дизайн выпрямителя идеально подходит для керлинга и выпрямления. Поддержка международного напряжения означает, что ваш стиль всегда будет с вами. Когда вы закончите совершенствовать свой стиль, вы можете легко хранить выпрямитель, используя шарнирный замок, чтобы соединить пластины.

Когда вы выходите из дома, чувствуя себя уверенно с вашей укладкой, последнее, о чем вы бы хотели беспокоиться это то, что не выключили ваш выпрямитель. Вот почему Sleek & Curl Expert автоматически отключается через 60 минут. Таким образом, вы можете быть спокойны за свой прибор и чувствовать себя полностью уверенно с вашим стилем. Для дополнительного удобства хранения используйте защитный чехол.

Салонный шнур 3 метра создает свободу стайлинга в вашей ванной комнате или рядом с зеркалом в спальне.

Основной тег JSTL

Автор: Чайтанья Сингх | Файл находится в папке: JSTL

Тег JSTL используется для форматирования URL-адресов или, можно сказать, кодирования URL-адресов. Это в основном используется, когда нам нужно открыть страницу JSP на основе пользовательского ввода или значения переменной. По сути, он преобразует относительный URL-адрес в URL-адрес контекста приложения. Сейчас это может показаться запутанным, но следуйте приведенным в этом уроке примерам, и вы сможете понять это довольно легко.

Синтаксис:

Базовый синтаксис выглядит следующим образом: атрибут «значение» является обязательным атрибутом для тега .

  

Есть три других необязательных атрибута для этого тега, которые выглядят следующим образом:

  • var : Имя переменной для хранения отформатированного URL (результирующий URL).
  • контекст : используется для указания приложения (или имени проекта). Не понимаете? Позже мы увидим это на примере.
  • scope : Область, в которой будет храниться атрибут var. Это может быть запрос, страница, приложение или сеанс.

Давайте разберемся с использованием этого тега и атрибутов на примере —

Пример 1: атрибут значения
 <% @ taglib uri = "http://java.sun.com/jsp/jstl/core" prefix = "c"%>


 JSTL c: пример тега url 


 
 

Вывод : приведенный выше код создается ниже вывода. Примечание. BeginnersBook — это имя моего проекта (другими словами, имя приложения JSP).

 /BeginnersBook/file1.jsp 

Пример 2: атрибут var тега

Давайте изменим пример 1 следующим образом. Мы добавили переменную myurl в . Теперь результат будет сохранен в переменной myurl .

  jsp" />
$ {myurl} 

Выход:

 / BeginnersBook / file1.jsp 
Пример 3: атрибут контекста

По умолчанию этот тег принимает текущее приложение в качестве контекста, однако мы можем явно указать контекст в URL-адресе c, как показано в следующем примере —

Примечание : значение контекста всегда должно начинаться с «/», в противном случае вы получите следующее сообщение об исключении —
HTTP Status 500 — javax.servlet.ServletException: javax.servlet.jsp.JspTagException: в тегах URL, когда указан атрибут «context», значения как «context», так и «url» должны начинаться с «/».

 
$ {myurl} 

Выход:

 /MyJSPProject/file1.jsp 

Пример 4: атрибут области
 
$ {requestScope.myurl} 

Вывод: экран вывода будет пустым, поскольку мы сохранили myurl в области сеанса и пытаемся распечатать значение после выборки из requestScope.

Правильное использование: Вот как это должно быть закодировано. Здесь мы сохранили в сеансе и получили из sessionScope, чтобы он работал нормально.

 
$ {sessionScope.myurl} 

Выход:

 /MyJSPProject/file1.jsp 

태그 사용법

태그 는 URL 에 자동 으로 Context Path 를 붙여 주는 일 을 합니다. 컨텍스트 를 변경 하더라도 URL 을 수정할 필요 가 없게 되는 것 입니다.

이 태그 는 ядро ​​jstl 태그 에 포함 되어 있으므로 을 사용 하려면 다음 tablib 지시자 를 페이지 상단 에 포함 하여야 합니다.

 

<% @ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core"%>

일반적인 사용법 을 다음 과 같습니다.

 

" />

웹 애플리케이션 의 컨텍스트 패스 가 http: // 도메인 / site / 로 되어 있다면 위 의 코드 는 출력 시 아래와 같이 변환 됩니다.

 

/site/images/btn/add.png " />

태그 를 사용할 때 생성 된 URL 의 끝에 jsessionid 가 붙을 경우 를 주의 해야 합니다. 컨텍스트 패스 가 추가 가 되므로 대부분 의 경우 아래 의 코드 합니다.

 

/images/btn/add.png " />

하지만 서버 설정 에 때라 세션 아이디 가 URL 에 붙는 경우 가 있습니다. 이런 경우 위 코드 는 출력 이 다음 과 같에 만들어져 오류 가 발생 합니다.

 

/site/;jsessiond=xxxxxx/images/btn/add.png " />

태그 에 사용될 때 URL 에 GET 방식 으로 전달 되는 파라미터 가 많이 사용 됩니다. 다음 과 같은 형식 입니다.

 

3 페이지

조회 값 이 계속 URL 에 따라 다녀야 할 경우 입니다.이경우 имя 의 값 을 URL 인코딩 을 해야 하는데 <параметр> 프로퍼티 를 사용 해서 인코딩 할 수 있습니다.

 

var = "url" >

3 페이지

태그 의 var 속성 은 생성 된 URL 을 변수 에 할당 하여 다른 곳에 사용할 수 있도록 해 줍니다.

var 속성 이 유용 하게 사용될 수 있는 곳에 태그 입니다. 태그 의 action 속성 에는 태그 를 사용할 수 없습니다. 그러므로 변수 에 셋팅 한 후에 폼 태그 에서 사용할 수 있습니다.

 

...

참고 로 태그 를 사용 하지 않고도 jsp 컨텍스트 패스 를 붙이 려면 다음 과 같이 사용 하면 되겠습니다.

 

...

Curl Object — документация PycURL 7.43.0.6

Установить параметр сеанса curl. Соответствует curl_easy_setopt в libcurl.

опция указывает, какую опцию установить. PycURL определяет константы соответствует константам CURLOPT_ * в libcurl, за исключением того, что префикс CURLOPT_ удален. Например, CURLOPT_URL — это отображается в PycURL как pycurl.URL , за некоторыми исключениями, как описано ниже.Для удобства CURLOPT_ * константы также отображаются в самих объектах Curl:

 импорт pycurl
c = pycurl. Curl ()
c.setopt (pycurl.URL, "http://www.python.org/")
# Такой же как:
c.setopt (c.URL, "http://www.python.org/")
 

Следующие исключения являются исключениями из соглашения об именах констант опций:

  • CURLOPT_FILETIME отображается как pycurl.OPT_FILETIME

  • CURLOPT_CERTINFO отображается как pycurl.OPT_CERTINFO

  • CURLOPT_COOKIELIST отображается как pycurl.COOKIELIST и, начиная с PycURL 7.43.0.2, также как pycurl.OPT_COOKIELIST

  • CURLOPT_RTSP_CLIENT_CSEQ отображается как pycurl.OPT_RTSP_CLIENT_CSEQ

  • CURLOPT_RTSP_REQUEST отображается как pycurl.OPT_RTSP_REQUEST

  • CURLOPT_RTSP_SERVER_CSEQ отображается как pycurl.OPT_RTSP_SERVER_CSEQ

  • CURLOPT_RTSP_SESSION_ID отображается как pycurl. OPT_RTSP_SESSION_ID

  • CURLOPT_RTSP_STREAM_URI отображается как pycurl.OPT_RTSP_STREAM_URI

  • CURLOPT_RTSP_TRANSPORT отображается как pycurl.OPT_RTSP_TRANSPORT

значение указывает значение для установки параметра. Принимаются разные варианты значения разных типов:

  • Параметры, указанные curl_easy_setopt как принимающие 1 или целочисленное значение принимает целые числа Python, длинные целые числа (в Python 2.х) и логические:

     c.setopt (pycurl.FOLLOWLOCATION, True)
    c.setopt (pycurl.FOLLOWLOCATION, 1)
    # Только Python 2.x:
    c.setopt (pycurl.FOLLOWLOCATION, 1L)
     
  • Параметры, указанные как принимающие строки с помощью curl_easy_setopt accept байтовые строки ( str на Python 2, байтов на Python 3) и Строки Unicode только с кодовыми точками ASCII. Дополнительные сведения см. В разделе «Обработка строк и Unicode». Пример:

     c.setopt (pycurl.URL, "http://www.python.org/")
    c.setopt (pycurl.URL, u "http://www.python.org/")
    # Только Python 3.x:
    c.setopt (pycurl.URL, b "http://www.python.org/")
     
  • HTTP200ALIASES , HTTPHEADER , POSTQUOTE , PREQUOTE , PROXYHEADER и QUOTE принимает список или кортеж строк. Те же правила применяются к этим строки, как и значения параметров строки. Пример:

     c.setopt (pycurl.HTTPHEADER, ["Принять:"])
    c.setopt (pycurl.HTTPHEADER, ("Принять:",))
     
  • READDATA принимает файловый объект или любой объект Python, имеющий читает метод . В Python 2 файловый объект будет передан напрямую в libcurl и может повысить эффективность передачи, если PycURL был скомпилирован с опцией AVOID_STDIO . На Python 3 и на Python 2, когда значение не является истинным файловым объектом, READDATA эмулируется в PycURL через READFUNCTION . Как правило, файл следует открывать в двоичном режиме. Пример:

     f = открыть ('file.txt', 'rb')
    c.setopt (c.READDATA, f)
     
  • WRITEDATA и WRITEHEADER принимают файловый объект или любой Python объект, который имеет метод записи . В Python 2 файловый объект будет передаваться непосредственно в libcurl и может повысить эффективность передачи, если PycURL не был скомпилирован с опцией AVOID_STDIO . На Python 3 и на Python 2, когда значение не является истинным файловым объектом, WRITEDATA эмулируется в PycURL через WRITEFUNCTION .Как правило, файл следует открывать в двоичном режиме. Пример:

     f = открытый ('/ dev / null', 'wb')
    c.setopt (c.WRITEDATA, f)
     
  • * FUNCTION опции принимают функцию. Поддерживаемые обратные вызовы задокументированы в обратных вызовах. Пример:

     # Python 2
    импортировать StringIO
    b = StringIO. StringIO ()
    c.setopt (pycurl.WRITEFUNCTION, b.write)
     
  • SHARE опция принимает объект CurlShare.

Можно установить целочисленные параметры — и только их — что PycURL делает не знаю, используя числовое значение константы параметра напрямую.Например, pycurl.VERBOSE имеет значение 42 и может быть установлен следующим образом:

setopt может сбросить некоторые параметры до их значений по умолчанию, выполняя задание pycurl.Curl.unsetopt () , если Нет не передается для значения опции. Следующие два вызова эквивалентны:

 c.setopt (c.URL, Нет)
c.unsetopt (c.URL)
 

Вызывает ошибку TypeError, если значение параметра не соответствует типу, принятому соответствующий параметр и исключение pycurl.error, когда libcurl отклоняет вариант или его стоимость.

Команда

curl в Linux с примерами

curl — это инструмент командной строки для передачи данных на сервер или с сервера с использованием любого из поддерживаемых протоколов (HTTP, FTP, IMAP, POP3, SCP, SFTP, SMTP, TFTP, TELNET, LDAP или FILE). curl работает на Libcurl. Этот инструмент предпочтительнее для автоматизации, поскольку он разработан для работы без взаимодействия с пользователем. curl может передавать несколько файлов одновременно.

Синтаксис:

 curl [параметры] [URL...] 

URL-адрес : Наиболее простое использование curl — это ввод команды, за которой следует URL-адрес.

curl https://www.geeksforgeeks.org
 

Это должно отобразить содержимое URL-адреса на терминале. Синтаксис URL-адреса зависит от протокола, и несколько URL-адресов могут быть записаны в виде наборов, например:

curl http: // site. {один, два, три} .com
 

URL-адреса с числовой последовательностью можно записать как:


curl ftp: // ftp.example.com/file[1-20 visible.jpeg
 

Индикатор выполнения: curl отображает индикатор выполнения во время использования, чтобы указать скорость передачи, объем переданных данных, оставшееся время и т. Д.

curl - # -o ftp://ftp.example.com/file.zip
curl - тихий ftp://ftp.example.com/file.zip
 

Если вам нравится индикатор выполнения вместо счетчика, вы можете использовать параметр — # , как в приведенном выше примере, или — беззвучный , если вы хотите полностью отключить его.

Пример:

Опции:

  • -o: сохраняет загруженный файл на локальном компьютере с именем, указанным в параметрах.

    Синтаксис:

    curl -o [имя_файла] [URL ...]
     

    Пример:

    curl -o hello.zip ftp://speedtest.tele2.net/1MB.zip
     

    Выход:


    В приведенном выше примере файл загружается с FTP-сервера и сохраняется под именем hello.zip .

  • -O: Этот параметр загружает файл и сохраняет его с тем же именем, что и в URL-адресе.

    Синтаксис:

    curl -O [URL...]
     

    Пример:

     curl -O ftp://speedtest.tele2.net/1MB.zip 

    Выход:

  • -C -: Эта опция возобновляет загрузку, которая была остановлена ​​по какой-либо причине. Это полезно, когда загрузка больших файлов была прервана.

    Синтаксис:

    curl -C - [URL ...]
     

    Пример:

     curl -C - -O ftp://speedtest.tele2.net/1MB.молния 

  • –limit-rate: Эта опция ограничивает верхнюю границу скорости передачи данных и поддерживает ее около заданного значения в байтах.

    Синтаксис:

    curl --limit-rate [значение] [URL]
     

    Пример:

    curl --limit-rate 1000K -O ftp://speedtest.tele2.net/1MB.zip
     

    Выход:


    Команда ограничивает загрузку до 1000 Кбайт.

  • -u: curl также предоставляет опции для загрузки файлов с аутентифицированных пользователем FTP-серверов.

    Синтаксис:

    curl -u {имя пользователя}: {пароль} [FTP_URL]
     

    Пример:

     curl -u demo: пароль -O ftp://test.rebex.net/readme.txt 

    Пример:

  • -T: Эта опция помогает загрузить файл на FTP-сервер.

    Синтаксис:

    curl -u {имя пользователя}: {пароль} -T {имя файла} {FTP_Location}
     

    Если вы хотите добавить уже существующий файл FTP, вы можете использовать параметр -a или –append .

  • –libcurl: Эта опция очень полезна с точки зрения разработчиков. Если эта опция добавлена ​​к любой команде cURL, она выводит исходный код C, который использует libcurl для указанной опции. Это код, аналогичный реализации из командной строки.

    Синтаксис:

    curl [URL ...] --libcurl [имя файла]
     

    Пример:

    curl https://www.geeksforgeeks.org> log.html --libcurl code.c
     

    Выход:

    В приведенном выше примере HTML-код загружается и сохраняется в журнале.html и код в файле code.c. Следующая команда показывает первые 30 строк кода.

  • -x, –proxy: curl также позволяет нам использовать прокси для доступа к URL.

    Синтаксис:

    curl -x [имя_прокси]: [порт] [URL ...]
     

    Если прокси требует аутентификации, его можно использовать с командой:

    curl -u [пользователь]: [пароль] -x [имя_прокси]: [порт] [URL ...]
     
  • Отправка почты: Поскольку curl может передавать данные по различным протоколам, включая SMTP, мы можем использовать curl для отправки писем.

    Синтаксис:

    curl –url [SMTP URL] –mail-from [sender_mail] –mail-rcpt [получатель_mail] -n –ssl-reqd -u {адрес электронной почты}: {пароль} -T [текстовый файл почты]

  • Протокол DICT: Libcurl определяет протокол DICT, который можно использовать для простого получения определения или значения любого слова непосредственно из командной строки.

    Синтаксис:

    curl [протокол: [словарь_URL]: [слово]
     

    Пример:

    curl dict: // dict.org / d: root
     

    Выход:

Примечание: Есть ряд других опций, предоставляемых cURL, которые можно проверить на странице руководства. Библиотека Libcurl была портирована на различные языки программирования. Желательно посетить сайт конкретного проекта для документации.

Команда

Curl в Linux с примерами

curl — это утилита командной строки для передачи данных с сервера или на сервер, предназначенная для работы без вмешательства пользователя.С curl вы можете загружать или выгружать данные, используя один из поддерживаемых протоколов, включая HTTP, HTTPS, SCP, SFTP и FTP. curl предоставляет ряд опций, позволяющих возобновить передачу, ограничить полосу пропускания, поддержку прокси, аутентификацию пользователей и многое другое.

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

Установка Curl #

Пакет curl предустановлен сегодня в большинстве дистрибутивов Linux.

Чтобы проверить, установлен ли пакет Curl в вашей системе, откройте консоль, введите curl и нажмите Enter. Если у вас установлен curl , система напечатает curl: попробуйте 'curl --help' или 'curl --manual' для получения дополнительной информации . В противном случае вы увидите что-то вроде команда curl не найдена .

Если curl не установлен, вы можете легко установить его с помощью диспетчера пакетов вашего дистрибутива.

Установить Curl на Ubuntu и Debian #

  sudo apt update   sudo apt install curl  

Установить Curl на CentOS и Fedora #

  sudo yum install curl  

Как использовать Curl #

Синтаксис для curl команда выглядит следующим образом:

В простейшей форме при вызове без какой-либо опции curl отображает указанный ресурс в стандартном выводе.

Например, чтобы получить пример .com , которую вы должны запустить:

  curl example.com  

Команда напечатает исходный код домашней страницы example.com в окне вашего терминала.

Если протокол не указан, curl пытается угадать протокол, который вы хотите использовать, и по умолчанию будет использовать HTTP .

Сохранение вывода в файл #

Чтобы сохранить результат команды curl , используйте параметр -o или -O .

Нижний регистр -o сохраняет файл с предопределенным именем файла, которое в приведенном ниже примере: vue-v2.6.10.js :

  curl -o vue-v2.6.10.js https: // cdn. jsdelivr.net/npm/vue/dist/vue.js  

Верхний регистр -O сохраняет файл с исходным именем файла:

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

Загрузка нескольких файлов #

Для одновременной загрузки нескольких файлов используйте несколько параметров -O , за которыми следует URL-адрес файла, который вы хотите загрузить.

В следующем примере мы загружаем iso-файлы Arch Linux и Debian:

  curl -O http://mirrors.edge.kernel.org/archlinux/iso/2018.06.01/archlinux-2018.06.01-x86_64 .iso \   -O https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-9.4.0-amd64-netinst.iso  

Возобновить загрузку #

You можно возобновить загрузку с помощью параметра -C - . Это полезно, если ваше соединение прерывается во время загрузки большого файла, и вместо того, чтобы начинать загрузку с нуля, вы можете продолжить предыдущую.

Например, если вы загружаете iso-файл Ubuntu 18.04 с помощью следующей команды:

  curl -O http://releases.ubuntu.com/18.04/ubuntu-18.04-live-server-amd64. iso  

, и внезапно ваше соединение прерывается, вы можете возобновить загрузку с помощью:

  curl -C - -O http://releases.ubuntu.com/18.04/ubuntu-18.04-live-server-amd64.iso  

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

Используйте параметр -I для получения только заголовков HTTP указанного ресурса:

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

Проверить, поддерживает ли веб-сайт HTTP / 2 #

Чтобы проверить, поддерживает ли конкретный URL новый протокол HTTP / 2, загрузите заголовки HTTP с -I вместе с опцией --http2 :

  curl -I --http2 -s https: / / linuxize.com / | grep HTTP  

Параметр -s указывает curl работать в тихом (тихом) режиме и скрывать индикатор выполнения и сообщения об ошибках.

Если удаленный сервер поддерживает HTTP / 2, curl печатает HTTP / 2.0 200 :

  HTTP / 2 200
  

В противном случае ответ будет HTTP / 1.1 200 :

  HTTP / 1.1 200 OK
  

Если у вас curl версии 7.47.0 или новее, вам не нужно использовать параметр --http2 , поскольку HTTP / 2 включен по умолчанию для всех HTTPS-соединений.

Follow Redirects #

По умолчанию curl не следует за заголовками HTTP Location.

Если вы попытаетесь получить версию google.com без www, вы заметите, что вместо получения источника страницы вы будете перенаправлены на версию www:

  curl google.com  

Параметр -L указывает curl следовать любому перенаправлению, пока не достигнет конечного пункта назначения:

  curl -L google. com  

Изменить User-Agent #

Иногда при загрузке файла удаленный сервер может быть настроен так, чтобы блокировать Curl User-Agent или возвращать различное содержимое в зависимости от устройства посетителя и браузера.

В подобных ситуациях для эмуляции другого браузера используйте параметр -A .

Например, для эмуляции Firefox 60 вы должны использовать:

  curl -A "Mozilla / 5.0 (X11; Linux x86_64; rv: 60.0) Gecko / 20100101 Firefox / 60.0" https: // getfedora.org /  

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

Параметр --limit-rate позволяет ограничить скорость передачи данных. Значение может быть выражено в байтах, килобайтах с суффиксом k , мегабайтах с суффиксом m и гигабайтах с суффиксом g .

В следующем примере curl загрузит двоичный файл Go и ограничит скорость загрузки до 1 МБ:

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

Этот параметр полезен для предотвращения использования curl всей доступной полосы пропускания.

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

Чтобы получить доступ к защищенному FTP-серверу с помощью curl , используйте параметр -u и укажите имя пользователя и пароль, как показано ниже:

  curl -u ИМЯ_ПОЛЬЗОВАТЕЛЯ FTP: ПАРОЛЬ FTP ftp: // ftp.example.com/  

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

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

  curl -u FTP_USERNAME: FTP_PASSWORD ftp://ftp.example.com/file.tar.gz  

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

  curl -T newfile.tar.gz -u FTP_USERNAME: FTP_PASSWORD ftp://ftp. example.com/  

Отправка файлов cookie #

Иногда вам может потребоваться отправить HTTP-запрос с определенными файлами cookie для доступа к удаленному ресурсу или для устранения проблемы.

По умолчанию при запросе ресурса с curl файлы cookie не отправляются и не сохраняются.

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

Например, чтобы загрузить rpm-файл Oracle Java JDK jdk-10.0.2_linux-x64_bin.rpm , вам необходимо передать файл cookie с именем oraclelicense со значением a :

  curl -L -b "oraclelicense = a" -O http: // download.oracle.com/otn-pub/java/jdk/10.0.2+13/19aef61b38124481863b1413dce1855f/jdk-10.0.2_linux-x64_bin.rpm  

Использование прокси #

curl поддерживает различные типы прокси-серверов HTTP, включая HTPS и НОСКИ. Для передачи данных через прокси-сервер используйте параметр -x ( --proxy ), за которым следует URL-адрес прокси.

Следующая команда загружает указанный ресурс с помощью прокси на 192.168.44.1 порт 8888 :

  curl -x 192.168.44.1: 8888 http://linux.com/  

Если прокси-сервер требует аутентификации, используйте параметр -U ( --proxy-user ), за которым следуют имя пользователя и пароль, разделенные двоеточием. ( пользователь: пароль ):

  curl -U имя пользователя: пароль -x 192.168.44.1:8888 http://linux.com/  

Заключение #

curl — это инструмент командной строки, который позволяет вы можете передавать данные с удаленного хоста или на него. Это полезно для устранения неполадок, загрузки файлов и многого другого.

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

Для получения дополнительной информации о curl посетите страницу документации Curl.

Если у вас есть вопросы или отзывы, не стесняйтесь оставлять комментарии.

Установка и использование cURL — Zendesk Develop

Во всех примерах документации Zendesk REST API используется cURL, легкий инструмент командной строки для выполнения HTTP-запросов без веб-браузера.cURL позволяет вам опробовать различные запросы API в интерфейсе командной строки, таком как командная строка в Windows или Терминал в macOS. Вам не нужно создавать работающее веб-приложение только для того, чтобы опробовать API.

cURL выполняет HTTP-запросы точно так же, как веб-браузер. Чтобы запросить веб-страницу из командной строки, введите curl , а затем URL-адрес сайта:

.

Ответ веб-сервера отображается непосредственно в интерфейсе командной строки. Если вы запросили HTML-страницу, вы получите исходный код страницы, который обычно видит браузер.

В этой статье рассматриваются следующие темы:

Связанная тема

Отказ от ответственности: Zendesk не может обеспечить поддержку сторонних технологий, таких как cURL или Windows. Сообщайте о любых проблемах в разделе комментариев или ищите решения в Интернете.

Использование cURL

Вы можете использовать cURL для проверки и тестирования различных запросов Zendesk API без необходимости создавать работающее веб-приложение. Например, следующий оператор cURL выполняет HTTP-запрос к конечной точке групп списков в Zendesk API:

  curl https: // mysubdomain.zendesk.com/api/v2/groups.json \
  -v -u [email protected]: мой пароль
  

API возвращает объект JSON, в котором перечислены группы в вашем экземпляре Zendesk Support:

  Статус: 200 ОК

{
  "группы": [
    {
      "name": "DJs",
      "created_at": "2009-05-13T00: 07: 08Z",
      "updated_at": "2011-07-22T00: 11: 12Z",
      "id": 211
    },
    {
      "name": "MC",
      "created_at": "2009-08-26T00: 07: 08Z",
      "updated_at": "2010-05-13T00: 07: 08Z",
      "id": 122
    }
  ]
}
  

JSON (нотация объектов JavaScript) — это облегченный формат обмена данными. Он разработан так, чтобы людям было легко читать и писать, а машинам — анализировать и генерировать. Чтобы узнать больше, см. Работа с JSON.

Использование cURL в Windows

Вы можете использовать командную строку Windows для запуска примеров cURL. Чтобы запустить командную строку, откройте меню Start , введите cmd в поле поиска и нажмите Введите .

Примечание. Пользователи Windows 10 могут установить и использовать оболочку Bash, интерфейс командной строки Unix, такой же, как и в macOS.-v -u [email protected]: мой пароль

Вы можете вставить многострочный оператор в командную строку, щелкнув значок в верхнем левом углу и выбрав Edit > Paste . Если вы предпочитаете использовать клавиатуру, нажмите Alt + пробел , чтобы открыть меню, затем нажмите E и P .

Переместить данные JSON в файл

Командная строка Windows не поддерживает одинарные кавычки. Это проблема, потому что операторы cURL используют одинарные кавычки для указания данных JSON.-v -u {email_address}: {пароль} -X POST

Оператор определяет данные JSON для создания группы (флаг -d означает данные ). Поскольку JSON заключен в одинарные кавычки, оператор не будет работать в командной строке.

Чтобы устранить проблему, сохраните JSON в отдельном файле и импортируйте его в оператор cURL. Чтобы изменить приведенный выше пример, создайте файл с именем json.txt , содержащий следующий текст:

{"group": {"name": "Моя группа"}}

Затем измените оператор cURL, чтобы импортировать данные JSON с синтаксисом @filename :

  curl https: // {субдомен}., | . Если JSON включает HTML, например, когда вы пытаетесь создать или обновить статью в Справочном центре, вам нужно найти и избежать всех угловых скобок в HTML. 

Это утомительно и подвержено ошибкам. Лучше всего придерживаться импорта JSON из файла.

Установка cURL

macOS

cURL установлен по умолчанию в macOS. Чтобы попробовать это, см. Раздел Тестирование вашей установки cURL ниже.

Windows 10 версии 1803 или более поздней

Если у вас Windows 10 версии 1803 или новее, cURL устанавливается по умолчанию.Чтобы попробовать это, см. Раздел Тестирование вашей установки cURL ниже.

Windows

Если у вас более ранняя версия Windows, чем Windows 10, версия 1803, вы можете загрузить и установить cURL следующим образом.

  1. В Windows создайте новую папку с именем curl на диске C :.

    C: \ curl

  2. Перейдите на http://curl.haxx.se/download.html и загрузите один из следующих zip-файлов:

    • Если у вас система Windows 64, перейдите к разделу Win64 - Generic и найдите последнюю версию Win64 ia64 zip с поддержкой SSL. Обычно он второй в списке. Щелкните номер версии, чтобы начать загрузку.
    • Если у вас система Windows 32, перейдите к разделу Win32 - Generic и найдите последнюю версию Win32 zip с поддержкой SSL. Обычно он второй в списке. Щелкните номер версии, чтобы начать загрузку.
  3. Распакуйте загруженный файл и переместите файл curl.exe в папку C: \ curl.

  4. Перейдите по адресу http: // curl.haxx.se/docs/caextract.html и загрузите файл цифрового сертификата с именем cacert.pem .

    Файл PEM содержит набор действительных цифровых сертификатов. Сертификаты используются для проверки подлинности защищенных веб-сайтов. Они распространяются центрами сертификации (ЦС), такими как GlobalSign и VeriSign. Файл PEM позволяет cURL безопасно подключаться к Zendesk API с помощью протокола Secure Sockets Layer (SSL).

  5. Переместите cacert.pem в папку C: \ curl и переименуйте его в curl-ca-bundle. crt .

  6. Добавьте путь к папке curl в переменную среды Windows PATH, чтобы команда curl была доступна из любого места в командной строке. Обновите переменную следующим образом:

    1. В меню Start щелкните правой кнопкой мыши This PC и выберите More> Properties .

      Примечание : в Windows 7 щелкните правой кнопкой мыши Компьютер и выберите Свойства .

    2. Щелкните Advanced System Settings .

    3. На вкладке Advanced нажмите кнопку Environment Variables в правом нижнем углу.

    4. Выберите переменную «Путь» в Системные переменные и нажмите Изменить .

    5. В диалоговом окне Изменить переменную среды щелкните New и добавьте путь к файлу curl. exe .Пример: C: \ curl.

      Windows 7 : в текстовом поле Variable Value добавьте точку с запятой к значению, а затем укажите путь к файлу curl.exe . Пример:; C: \ curl

    6. Продолжайте нажимать ОК, чтобы принять изменения и закрыть диалоговое окно.

Тестирование вашей установки cURL

Вы можете протестировать установку cURL, отправив запрос к Zendesk API. Тест получает информацию о вашем пользователе Zendesk Support.) характер. Убедитесь, что после каретки нет места. См. Раздел Использование cURL в Windows выше.

  • Замените заполнители в фигурных скобках информацией, которую вы используете для входа в Zendesk Support. Пример:

      завиток https://obscura.zendesk.com/api/v2/users/me.json \
      -v -u [email protected]: мой пароль
      
  • Запустите интерфейс командной строки.

    • В Windows откройте меню «Пуск», введите cmd в поле поиска и нажмите Введите .
    • В macOS дважды щелкните приложение «Терминал» в папке «Приложения / Утилиты».
  • Скопируйте оператор cURL из текстового файла и вставьте его в командную строку.

    Для пользователей Windows : после копирования в буфер обмена выберите Edit > Paste из контекстного меню в верхнем левом углу окна:

  • Нажмите Введите , чтобы запустить оператор cURL.

    На консоли должна отображаться информация о пользователе Zendesk Support в формате объекта JSON.

    Вы можете красиво распечатать результаты, чтобы их было легче читать. См. Раздел Преобразование JSON в понятные данные.

  • Общие флаги cURL

    Вы увидите следующие флаги cURL в примерах в документации Zendesk REST API.

    -H

    Задает любое дополнительное содержимое заголовка для включения в HTTP-запрос. Запросы API, которые отправляют данные на наши серверы, обычно включают тип содержимого данных. Пример:

    Пример: -H "Content-Type: application / json" .

    -u

    Задает имя пользователя и пароль для аутентификации сервера. Имя пользователя и пароль разделяются двоеточием.

    Пример: -u [email protected]: mypassword

    -v

    Делает ответ более подробным.

    -X

    Задает метод запроса, используемый при взаимодействии с HTTP-сервером.Пример: PUT или POST .

    Примечание. GET - это метод по умолчанию, поэтому указывать его не нужно.

    Пример: -X PUT

    -G --data-urlencode

    Используется для конечных точек API, которые отправляют данные в строке запроса, например API поиска. Параметр --data-urlencode кодирует URL-адрес строки запроса. Флаг -G указывает, что данные в кодировке url предназначены для запроса GET, а не для запроса POST.

    Например, предположим, что вы хотите выполнить следующий поиск, используя конечную точку результатов поиска по списку:

    .../api/v2/search.json?query=type:ticket status: open

    Команда cURL выглядит так:

      curl "https: // {subdomain} .zendesk.com / api / v2 / search.json" \
      -G --data-urlencode "query = type: ticket status: open" \
      -v -u {email_address}: {пароль}
      

    справочная страница curl

    справочная страница curl

    НАЗВАНИЕ

    curl - передать URL-адрес

    ОБЗОР

    curl [параметры] [URL ...]

    ОПИСАНИЕ

    curl - это инструмент для передачи данных с сервера или на сервер с использованием одного из поддерживаемых протоколов (HTTP, HTTPS, FTP, FTPS, GOPHER, DICT, TELNET, LDAP или FILE).Команда предназначена для работы без взаимодействия с пользователем.

    curl предлагает множество полезных трюков, таких как поддержка прокси, аутентификация пользователей, загрузка ftp, HTTP-сообщения, соединения SSL (https :), файлы cookie, возобновление передачи файлов и многое другое. Как вы увидите ниже, от количества функций у вас закружится голова!

    curl поддерживается libcurl для всех функций, связанных с передачей данных. Подробности смотрите в libcurl (3).

    URL

    Синтаксис URL зависит от протокола. Вы найдете подробное описание в RFC 2396.

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

    http: // site. {One, two, three} .com

    или вы можете получить последовательности буквенно-цифровых серий, используя [] как в:

    ftp://ftp.numericals.com/file[1-100 visible.txt ftp://ftp.numericals.com/file[001-100 impression.txt (с ведущими нулями) ftp: //ftp.letters .com / файл [az] .txt

    На данный момент не поддерживается вложение последовательностей:

    http://www.any.org/archive[1996-1999 provided/volume[1-4 visiblepart{a,b,c,index}.html

    Вы можете указать любое количество URL-адресов в командной строке. Они будут извлекаться последовательно в указанном порядке.

    Curl будет пытаться повторно использовать соединения для передачи нескольких файлов, поэтому получение большого количества файлов с одного сервера не приведет к многократным соединениям / рукопожатиям. Это увеличивает скорость. Конечно, это делается только для файлов, указанных в одной командной строке, и не может использоваться между отдельными вызовами curl.

    ОПЦИИ

    -a / - добавить

    (FTP) При использовании при загрузке по FTP это указывает curl на добавление к целевому файлу вместо его перезаписи.Если файл не существует, он будет создан.

    Если этот параметр используется дважды, второй снова отключит режим добавления.

    -A / - user-agent <строка агента>

    (HTTP) Укажите строку User-Agent для отправки на HTTP-сервер. Некоторые плохо сделанные CGI терпят неудачу, если не установлено значение «Mozilla / 4.0». Чтобы закодировать пробелы в строке, заключите строку в одинарные кавычки. Конечно, это также можно установить с помощью параметра заголовка -H / -.

    Если этот параметр установлен более одного раза, последний будет использован.

    --аньяут

    (HTTP) Указывает curl самостоятельно определить метод аутентификации и использовать наиболее безопасный, который, по утверждениям удаленного сайта, поддерживает. Для этого сначала выполняется запрос и проверяются заголовки ответов, что вызывает дополнительный круговой обход сети. Это используется вместо установки определенного метода аутентификации, который вы можете сделать с помощью --basic, --digest, --ntlm и --negotiate. (Добавлено в 7.10.6)

    Если эта опция используется несколько раз, следующие случаи не имеют значения.

    -b / - cookie

    (HTTP) Передайте данные на HTTP-сервер в виде файла cookie. Предположительно это данные, ранее полученные от сервера в строке «Set-Cookie:». Данные должны быть в формате «ИМЯ1 = ЗНАЧЕНИЕ1; ИМЯ2 = ЗНАЧЕНИЕ2».

    Если в строке не используется буква «=», она рассматривается как имя файла для чтения из ранее сохраненных строк cookie, которые должны использоваться в этом сеансе, если они совпадают. Использование этого метода также активирует «синтаксический анализатор файлов cookie», который также будет создавать входящие файлы cookie для записи curl, что может быть удобно, если вы используете его в сочетании с параметром -L / - location.Формат файла для чтения файлов cookie должен быть простым заголовком HTTP или форматом файла cookie Netscape / Mozilla.

    ПРИМЕЧАНИЕ, что файл, указанный с помощью -b / - cookie, используется только как входной. Файлы cookie не будут храниться в файле. Для хранения файлов cookie используйте параметр -c / - cookie-jar или даже можете сохранить заголовки HTTP в файл, используя -D / - dump-header!

    Если этот параметр установлен более одного раза, последний будет использован.

    -B / - использование ascii

    Используйте передачу ASCII при получении файла FTP или информации LDAP.Для FTP это также можно обеспечить, используя URL-адрес, заканчивающийся на "; type = A". Эта опция приводит к тому, что данные, отправляемые на стандартный вывод, находятся в текстовом режиме для систем win32.

    Если этот параметр используется дважды, второй отключит использование ASCII.

    - базовый

    (HTTP) Указывает curl использовать базовую аутентификацию HTTP. Это значение по умолчанию, и эта опция обычно бессмысленна, если вы не используете ее для переопределения ранее установленной опции, которая устанавливает другой метод аутентификации (например, --ntlm, --digest и --negotiate).(Добавлено в 7.10.6)

    Если эта опция используется несколько раз, следующие случаи не имеют значения.

    --ciphers <список шифров>

    (SSL) Определяет, какие шифры использовать в соединении. Список шифров должен использовать действительные шифры. Прочтите подробные сведения о списке шифров SSL по этому URL-адресу: http://www.openssl.org/docs/apps/ciphers.html

    Если этот параметр используется несколько раз, последний будет иметь приоритет над другими.

    - сжатый

    (HTTP) Запросить сжатый ответ, используя один из алгоритмов, поддерживаемых libcurl, и вернуть несжатый документ.Если этот параметр используется и сервер отправляет неподдерживаемую кодировку, Curl сообщит об ошибке.

    Если эта опция используется несколько раз, каждое событие будет включать / выключать ее.

    - тайм-аут соединения <секунды>

    Максимальное время в секундах, в течение которого вы разрешаете соединение с сервером. Это ограничивает только фазу подключения, после подключения curl эта опция больше не используется. См. Также параметр --max-time.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -c / - cookie-jar <имя файла>

    Укажите, в какой файл вы хотите, чтобы curl записывал все файлы cookie после завершения операции. Curl записывает все файлы cookie, ранее считанные из указанного файла, а также все файлы cookie, полученные с удаленного сервера (ов). Если файлы cookie не известны, файл не будет записан. Файл будет записан с использованием формата файлов cookie Netscape. Если вы установите для имени файла одно тире «-», файлы cookie будут записаны в стандартный вывод.

    ПРИМЕЧАНИЕ Если невозможно создать или записать файл cookie, вся операция curl не завершится ошибкой или даже не сообщит об ошибке.Использование -v приведет к отображению предупреждения, но это единственная видимая обратная связь, которую вы получите об этой потенциально смертельной ситуации.

    Если эта опция используется несколько раз, будет использоваться последнее указанное имя файла.

    -C / - continue-at <смещение>

    Продолжить / возобновить предыдущую передачу файла с заданным смещением. Данное смещение - это точное количество байтов, которые будут пропущены, считая с начала исходного файла до его передачи в место назначения. Если используется с загрузкой, команда SIZE ftp-сервера не будет использоваться curl.

    Используйте «-C -», чтобы указать curl, чтобы он автоматически определял, где и как возобновить передачу. Затем он использует данные файлы вывода / ввода, чтобы выяснить это.

    Если эта опция используется несколько раз, будет использоваться последняя.

    - создать каталог

    При использовании вместе с параметром -o curl при необходимости создаст необходимую иерархию локальных каталогов.

    --crlf

    (FTP) Преобразование LF в CRLF при загрузке. Полезно для MVS (OS / 390).

    Если эта опция используется дважды, вторая снова отключит преобразование crlf.

    -d / - данные <данные>

    (HTTP) Отправляет указанные данные в запросе POST на HTTP-сервер способом, который может имитировать, как если бы пользователь заполнил HTML-форму и нажал кнопку отправки. Обратите внимание, что данные отправляются точно так, как указано, без дополнительной обработки (с обрезанными символами новой строки). Ожидается, что данные будут & zerosp; "закодированы по URL". Это приведет к тому, что curl будет передавать данные на сервер, используя application-type application / x-www-form-urlencoded. Сравните с формой -F / -.Если этот параметр используется более одного раза в одной командной строке, указанные фрагменты данных будут объединены вместе с разделительным символом &. Таким образом, использование '-d name = daniel -d skill = lousy' создаст блок сообщения, который выглядит как & zerosp; 'name = daniel & skill = lousy'.

    Если вы начинаете данные с буквы @, остальное должно быть именем файла, из которого будут считываться данные, или - если вы хотите, чтобы curl читал данные из stdin. Содержимое файла уже должно быть закодировано по URL. Также можно указать несколько файлов.Таким образом, отправка данных из файла с именем 'foobar' будет выполняться с помощью --data @foobar ".

    Чтобы публиковать данные в двоичном формате, вы должны вместо этого использовать параметр --data-binary.

    -d / - data совпадает с --data-ascii.

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

    --data-ascii <данные>

    (HTTP) Это псевдоним для опции -d / - data.

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

    --data-binary <данные>

    (HTTP) Публикует данные аналогично --data-ascii, хотя при использовании этой опции весь контекст отправленных данных сохраняется как есть. Если вы хотите опубликовать двоичный файл без функции strip-newlines параметра --data-ascii, это для вас.

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

    - дайджест

    (HTTP) Включает дайджест-аутентификацию HTTP.Это проверка подлинности, предотвращающая отправку пароля по сети в виде открытого текста. Используйте это в сочетании с обычной опцией -u / - user для установки имени пользователя и пароля. См. Также параметры --ntlm, --negotiate и --anyauth. (Добавлено в curl 7.10.6)

    Если эта опция используется несколько раз, следующие случаи не имеют значения.

    - отключение-эпрт

    (FTP) Укажите curl, чтобы отключить использование команд EPRT и LPRT при выполнении активных передач FTP.Обычно Curl всегда сначала пытается использовать EPRT, а затем LPRT перед использованием PORT, но с этой опцией он сразу же будет использовать PORT. EPRT и LPRT являются расширениями исходного протокола FTP, могут работать не на всех серверах, но обеспечивают большую функциональность лучше, чем традиционная команда PORT. (Добавлено в 7.10.5)

    Если эта опция используется несколько раз, каждое событие будет включать / выключать ее.

    - отключение-epsv

    (FTP) Укажите curl, чтобы отключить использование команды EPSV при выполнении пассивных передач FTP.Обычно Curl всегда сначала пытается использовать EPSV перед PASV, но с этой опцией он не будет пытаться использовать EPSV.

    Если эта опция используется несколько раз, каждое событие будет включать / выключать ее.

    -D / - заголовок дампа <файл>

    Записать заголовки протокола в указанный файл.

    Этот параметр удобно использовать, когда вы хотите сохранить заголовки, которые отправляет вам сайт HTTP. Файлы cookie из заголовков могут быть прочитаны во втором вызове curl с помощью параметра -b / - cookie! Однако параметр -c / - cookie-jar - лучший способ хранить файлы cookie.

    При использовании на FTP строки ответа ftp-сервера считаются «заголовками» и поэтому сохраняются там.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -e / - referer

    (HTTP) Отправляет информацию «Referer Page» на HTTP-сервер. Конечно, это также можно установить с помощью флага заголовка -H / -. При использовании с -L / - location вы можете добавить "; auto" к URL-адресу ссылки, чтобы curl автоматически устанавливал предыдущий URL-адрес, когда он следует за заголовком Location :.Строку «; auto» можно использовать отдельно, даже если вы не устанавливаете начальный референт.

    Если эта опция используется несколько раз, будет использоваться последняя.

    - Окружающая среда

    (ТОЛЬКО ОС RISC) Устанавливает диапазон переменных среды, используя имена, поддерживаемые параметром -w, чтобы упростить извлечение полезной информации после запуска curl.

    Если эта опция используется несколько раз, каждое событие будет включать / выключать ее.

    --egd-file <файл>

    (HTTPS) Укажите путь к сокету Entropy Gathering Daemon.Сокет используется для заполнения случайного механизма для SSL-соединений. См. Также параметр --random-file.

    -E / - cert <сертификат [: пароль]>

    (HTTPS) Указывает curl использовать указанный файл сертификата при получении файла с HTTPS. Сертификат должен быть в формате PEM. Если дополнительный пароль не указан, он будет запрошен на терминале. Обратите внимание, что этот сертификат - это закрытый ключ и объединенные частный сертификат!

    Если эта опция используется несколько раз, будет использоваться последняя.

    --сертификационный <тип>

    (SSL) Сообщает curl, в каком типе сертификата находится предоставленный сертификат. PEM, DER и ENG являются распознаваемыми типами.

    Если эта опция используется несколько раз, будет использоваться последняя.

    --cacert <сертификат CA>

    (HTTPS) Указывает curl использовать указанный файл сертификата для проверки однорангового узла. Файл может содержать несколько сертификатов CA. Сертификат (ы) должен быть в формате PEM.

    curl распознает переменную среды с именем «CURL_CA_BUNDLE», если она установлена, и использует данный путь как путь к пакету сертификатов CA.Эта опция переопределяет эту переменную.

    Версия curl для Windows автоматически ищет файл сертификатов CA с именем ´curl-ca-bundle.crt´ либо в том же каталоге, что и curl.exe, либо в текущем рабочем каталоге, либо в любой папке по пути PATH. .

    Если эта опция используется несколько раз, будет использоваться последняя.

    --capath <каталог сертификатов CA>

    (HTTPS) Указывает curl использовать указанный каталог сертификатов для проверки однорангового узла. Сертификаты должны быть в формате PEM, а каталог должен быть обработан с помощью утилиты c_rehash, поставляемой с openssl.Использование --capath может позволить curl гораздо эффективнее устанавливать https-соединения, чем использование --cacert, если файл --cacert содержит много сертификатов CA.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -f / - сбой

    (HTTP) Отказ без уведомления (без вывода) при ошибках сервера. В основном это делается так, чтобы лучше включить скрипты и т. Д., Чтобы лучше справляться с неудачными попытками. В обычных случаях, когда HTTP-сервер не может доставить документ, он возвращает HTML-документ с указанием этого (который часто также описывает причину и многое другое).Этот флаг не позволит curl выводить это и вместо этого тихо завершит работу.

    Если этот параметр используется дважды, второй снова отключит тихий сбой.

    --ftp-create-dirs

    (FTP) Когда URL / операция FTP использует путь, который в настоящее время не существует на сервере, стандартное поведение curl - сбой. Используя эту опцию, curl вместо этого попытается создать отсутствующие каталоги. (Добавлено в 7.10.7)

    Если эта опция используется дважды, вторая снова отключит тихий сбой.

    - фтп-пасв

    (FTP) Используйте PASV при передаче. PASV - это внутреннее поведение по умолчанию, но с помощью этой опции можно переопределить предыдущую опцию --ftp-port. (Добавлено в 7.11.0)

    Если эта опция используется дважды, вторая снова отключит тихий сбой.

    - ftp-ssl

    (FTP) Установите переключатель FTP-соединения на использование SSL / TLS. (Добавлено в 7.11.0)

    Если эта опция используется дважды, вторая снова отключит тихий сбой.

    -F / - форма

    (HTTP) Это позволяет curl имитировать заполненную форму, в которой пользователь нажал кнопку отправки.Это вызывает свертывание данных POST с использованием данных типа содержимого multipart / form-data в соответствии с RFC1867. Это позволяет загружать двоичные файлы и т. Д. Чтобы заставить часть «содержимого» быть файлом, поставьте перед именем файла знак @. Чтобы просто получить часть содержимого из файла, поставьте перед именем файла букву <. Разница между @ и <заключается в том, что @ заставляет файл прикрепляться к сообщению в виде загрузки файла, а <создает текстовое поле и просто получает содержимое этого текстового поля из файла.

    Пример, чтобы отправить файл паролей на сервер, где & zerosp; 'пароль' - это имя поля формы, в которое / etc / passwd будет входить:

    curl -F пароль = @ / etc / passwd www.mypasswords.com

    Чтобы прочитать содержимое файла из стандартного ввода файла, используйте - там, где должно было быть имя файла. Это касается конструкций @ и <.

    Вы также можете указать curl, какой Content-Type использовать для части загрузки файла, используя 'type =', примерно так:

    curl -F "web = @ index.html; type = text / html "url.com

    См. Другие примеры и подробности в РУКОВОДСТВЕ.

    Эту опцию можно использовать несколько раз.

    -г / - глобофф

    Эта опция отключает "парсер подстановки URL". Когда вы устанавливаете этот параметр, вы можете указывать URL-адреса, содержащие буквы {} [], не интерпретируя их самим curl. Обратите внимание, что эти буквы не являются обычным юридическим содержимым URL, но они должны быть закодированы в соответствии со стандартом URI.

    -Г / - получить

    При использовании этой опции все данные, указанные с помощью -d / - data или --data-binary, будут использоваться в запросе HTTP GET вместо запроса POST, который в противном случае использовался бы.Данные будут добавлены к URL-адресу с помощью символа '?' разделитель.

    При использовании в сочетании с -I данные POST вместо этого будут добавлены к URL-адресу с запросом HEAD.

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

    -h / - справка

    Справка по использованию.

    -H / - заголовок <заголовок>

    (HTTP) Дополнительный заголовок для использования при получении веб-страницы. Вы можете указать любое количество дополнительных заголовков. Обратите внимание, что если вы должны добавить настраиваемый заголовок с тем же именем, что и один из внутренних, который будет использовать curl, ваш внешний заголовок будет использоваться вместо внутреннего.Это позволяет делать даже более сложные вещи, чем обычно делает curl. Вы не должны заменять установленные внутри заголовки, не зная точно, что вы делаете. Замена внутреннего заголовка на заголовок без содержимого в правой части двоеточия предотвратит появление этого заголовка.

    См. Также параметры -A / - user-agent и -e / - referer.

    Этот параметр можно использовать несколько раз для добавления / замены / удаления нескольких заголовков.

    -i / - включают

    (HTTP) Включить в вывод HTTP-заголовок.HTTP-заголовок включает в себя такие вещи, как имя сервера, дату документа, HTTP-версию и многое другое ...

    Если этот параметр используется дважды, второй снова отключит включение заголовка.

    - интерфейс <имя>

    Выполнение операции с использованием указанного интерфейса. Вы можете ввести имя интерфейса, IP-адрес или имя хоста. Пример может выглядеть так:

    curl - интерфейс eth0: 1 http://www.netscape.com/

    Если эта опция используется несколько раз, будет использоваться последняя.

    -И / - голова

    (HTTP / FTP / FILE) Получить только HTTP-заголовок! HTTP-серверы имеют команду HEAD, которая используется для получения ничего, кроме заголовка документа. При использовании с файлом FTP или FILE curl отображает только размер файла и время последнего изменения.

    Если эта опция используется дважды, вторая снова отключит только заголовок.

    -j / - куки-файлы нежелательной сессии

    (HTTP) Когда curl получает указание читать файлы cookie из заданного файла, эта опция отменяет все «файлы cookie сеанса».Это будет иметь такой же эффект, как если бы был запущен новый сеанс. Типичные браузеры всегда сбрасывают файлы cookie сеанса при закрытии. (Добавлено в 7.9.7)

    Если эта опция используется несколько раз, каждое событие будет включать / выключать ее.

    -к / - небезопасный

    (SSL) Эта опция явно позволяет curl выполнять «незащищенные» SSL-соединения и передачи. Начиная с curl 7.10, будет предпринята попытка сделать все SSL-соединения безопасными с помощью пакета сертификатов CA, установленного по умолчанию.Это приводит к тому, что все соединения, которые считаются "небезопасными", не работают, если не используется -k / - insecure.

    Если эта опция используется дважды, второй раз снова отключит ее.

    - клавиша <клавиша>

    (SSL) Имя файла закрытого ключа. Позволяет указать свой закрытый ключ в этом отдельном файле.

    Если эта опция используется несколько раз, будет использоваться последняя.

    - тип ключа <тип>

    (SSL) Тип файла закрытого ключа. Укажите тип закрытого ключа, предоставленного вашим ключом.Поддерживаются DER, PEM и ENG.

    Если эта опция используется несколько раз, будет использоваться последняя.

    --krb4 <уровень>

    (FTP) Включить аутентификацию и использование Kerberos4. Необходимо ввести уровень, который должен быть одним из «ясно», «безопасно», «конфиденциально» или «конфиденциально». Если вы используете уровень, который не является одним из них, вместо этого будет использоваться «частный».

    Эта опция требует, чтобы библиотека была собрана с поддержкой kerberos4. Это не очень распространено. Используйте -V / - version, чтобы узнать, поддерживает ли это ваш curl.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -K / - config <файл конфигурации>

    Укажите, из какого файла конфигурации читать аргументы curl. Файл конфигурации - это текстовый файл, в который можно записать аргументы командной строки, которые затем будут использоваться, как если бы они были записаны в самой командной строке. Параметры и их параметры должны быть указаны в одной строке файла конфигурации. Если параметр должен содержать пробелы, параметр должен быть заключен в кавычки.Если первый столбец строки конфигурации представляет собой символ '#', остальная часть строки будет рассматриваться как комментарий.

    Укажите имя файла как «-», чтобы программа curl считывала файл со стандартного ввода.

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

    url = "http://curl.haxx.se/docs/"

    Эту опцию можно использовать несколько раз.

    - предельная скорость <скорость>

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

    Данная скорость измеряется в байтах в секунду, если не добавлен суффикс. Добавление «k» или «K» приведет к подсчету числа в килобайтах, «m» или «M» - в мегабайтах, «g» или «G» - в гигабайтах. Примеры: 200K, 3м и 1G.

    Если вы также используете параметр -Y / - ограничения скорости, этот параметр будет иметь приоритет и может немного нарушить ограничение скорости, чтобы помочь сохранить работающую логику ограничения скорости.

    Эта опция была введена в curl 7.10.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -l / - только список

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

    Эта опция вызывает отправку команды FTP NLST. Некоторые FTP-серверы перечисляют только файлы в своем ответе на NLST; они не включают подкаталоги и символические ссылки.

    Если эта опция используется дважды, вторая снова отключит только список.

    -L / - местонахождение

    (HTTP / HTTPS) Если сервер сообщает, что запрошенная страница имеет другое местоположение (указанное в строке заголовка Location :), этот флаг позволит curl попытаться повторно попытаться получить на новом месте. Если используется вместе с -i / - include или -I / - head, будут показаны заголовки со всех запрошенных страниц. Если используется аутентификация, curl будет отправлять свои учетные данные только на начальный хост, поэтому, если перенаправление берет curl на другой хост, он не перехватывает пользователь + пароль.См. Также --location-trust, чтобы узнать, как это изменить.

    Если эта опция используется дважды, вторая снова отключит отслеживание местоположения.

    - доверенный

    (HTTP / HTTPS) Подобно -L / - location, но позволяет отправлять имя + пароль всем хостам, на которые сайт может перенаправлять. Это может или не может привести к нарушению безопасности, если сайт перенаправляет вас на сайт, на который вы отправляете свою информацию для аутентификации (которая является открытым текстом в случае базовой аутентификации HTTP).

    Если эта опция используется дважды, вторая снова отключит отслеживание местоположения.

    --max-sizes <байты>

    Укажите максимальный размер (в байтах) файла для загрузки. Если запрошенный файл больше этого значения, передача не начнется, и curl вернется с кодом выхода 63.

    ПРИМЕЧАНИЕ. Размер файла не всегда известен перед загрузкой, и для таких файлов этот параметр не действует, даже если объем передаваемых файлов превышает данный лимит.Это касается как передачи по FTP, так и HTTP.

    -м / - макс. Время <секунды>

    Максимальное время в секундах, в течение которого можно выполнить всю операцию. Это полезно для предотвращения зависания пакетных заданий в течение нескольких часов из-за медленных сетей или выхода из строя ссылок. Это не работает полностью в системах win32. См. Также параметр --connect-timeout.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -М / - ручной

    Руководство. Отобразите огромный текст справки.

    -n / - netrc

    Заставляет curl сканировать файл .netrc в домашнем каталоге пользователя на предмет имени пользователя и пароля. Обычно это используется для ftp в unix. Если используется с http, curl включит аутентификацию пользователя. См. Netrc (4) или ftp (1) для получения подробной информации о формате файла. Curl не будет жаловаться, если у этого файла нет необходимых разрешений (он не должен быть доступен для чтения всем или группе). Переменная окружения «HOME» используется для поиска домашнего каталога.

    Быстрый и очень простой пример того, как настроить.netrc, чтобы разрешить curl подключаться по ftp к машине host.domain.com с именем пользователя & zerosp; 'я' и паролем 'секрет', должно выглядеть примерно так:

    машина host.domain.com логин сам пароль секрет

    Если эта опция используется дважды, вторая снова отключит использование netrc.

    --netrc-optional

    Очень похоже на --netrc, но эта опция делает использование .netrc необязательным и не обязательным, как это делает --netrc.

    - переговоры

    (HTTP) Включает аутентификацию GSS-Negotiate.Метод GSS-Negotiate был разработан Microsoft и используется в их веб-приложениях. Это в первую очередь предназначено для поддержки аутентификации Kerberos5, но также может использоваться вместе с другими методами аутентификации. Дополнительные сведения см. В проекте IETF draft-brezak-spnego-http-04.txt. (Добавлено в 7.10.6)

    Эта опция требует, чтобы библиотека была построена с поддержкой GSSAPI. Это не очень распространено. Используйте -V / - version, чтобы узнать, поддерживает ли ваша версия GSS-Negotiate.

    Если эта опция используется несколько раз, следующие случаи не имеют значения.

    -N / - без буфера

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

    Если эта опция используется дважды, вторая снова включит буферизацию.

    --ntlm

    (HTTP) Включает проверку подлинности NTLM. Метод проверки подлинности NTLM был разработан Microsoft и используется веб-серверами IIS.Это проприетарный протокол, полностью разработанный умными людьми и реализованный в curl на основе их усилий. Такое поведение не следует одобрять, вы должны поощрять всех, кто использует NTLM, вместо этого перейти на общедоступный и документированный метод аутентификации. Такие как Дайджест. (Добавлено в 7.10.6)

    Если вы хотите включить NTLM для проверки подлинности прокси, используйте --proxy-ntlm.

    Эта опция требует, чтобы библиотека была построена с поддержкой SSL. Используйте -V / - version, чтобы узнать, поддерживает ли ваш curl NTLM.

    Если эта опция используется несколько раз, следующие случаи не имеют значения.

    -o / - output <файл>

    Записывать вывод в <файл> вместо стандартного вывода. Если вы используете {} или [] для получения нескольких документов, вы можете использовать '#', за которым следует число в спецификаторе . Эта переменная будет заменена текущей строкой для получаемого URL. Как в:

    curl http: // {one, two} .site.com -o "file_ # 1.txt"

    или используйте несколько переменных, например:

    curl http: // {сайт, хост}.хост [1-5] .com -o "# 1_ # 2"

    Вы можете использовать эту опцию столько раз, сколько у вас есть URL-адресов.

    См. Также параметр --create-dirs для динамического создания локальных каталогов.

    -O / - удаленное имя

    Записать вывод в локальный файл с именем, как у полученного удаленного файла. (Используется только файловая часть удаленного файла, путь обрезается.)

    Вы можете использовать эту опцию столько раз, сколько у вас есть URL-адресов.

    --pass <фраза>

    (SSL) Парольная фраза для закрытого ключа

    Если эта опция используется несколько раз, будет использоваться последняя.

    - прокси-NTLM

    Указывает curl использовать аутентификацию NTLM при взаимодействии с указанным прокси. Используйте --ntlm для включения NTLM с удаленным хостом.

    Если этот параметр используется дважды, второй снова отключит прокси NTLM.

    -p / - прокси-туннель

    Когда используется HTTP-прокси (-x / - proxy), эта опция заставит протоколы, отличные от HTTP, пытаться туннелировать через прокси, а не просто использовать его для выполнения HTTP-подобных операций. Туннельный подход осуществляется с помощью запроса CONNECT HTTP-прокси и требует, чтобы прокси разрешал прямое соединение с удаленным номером порта, через который curl хочет туннелировать.

    Если этот параметр используется дважды, второй снова отключит прокси-туннель.

    -P / - ftp-порт <адрес>

    (FTP) Меняет роли инициатора / слушателя при подключении по ftp. Этот переключатель заставляет Curl использовать команду PORT вместо PASV. На практике PORT сообщает серверу о необходимости подключения к указанному клиенту адресу и порту, в то время как PASV запрашивает у сервера IP-адрес и порт для подключения. <адрес> должен быть одним из:

    интерфейс

    и.e "eth0", чтобы указать IP-адрес интерфейса, который вы хотите использовать (только для Unix).

    IP-адрес

    т.е. "192.168.10.1" для указания точного IP-адреса

    имя хоста

    то есть "my.host.domain" для указания машины

    -

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

    Если эта опция используется несколько раз, будет использоваться последняя. Отключите использование ПОРТА с помощью --ftp-pasv. Отключите попытку использовать команду EPRT вместо PORT с помощью --disable-eprt.EPRT - это действительно ПОРТ ++.

    -q

    Если используется в качестве первого параметра в командной строке, файл $ HOME / .curlrc не будет читаться и использоваться в качестве файла конфигурации.

    -Q / - цитата <команда>

    (FTP) Отправить произвольную команду удаленному FTP-серверу с помощью команды QUOTE на сервере. Не все серверы поддерживают эту команду, а набор команд QUOTE зависит от сервера! Команды цитаты отправляются ДО того, как происходит перевод. Чтобы команды выполнялись после успешной передачи, поставьте перед ними дефис '-'.Вы можете указать любое количество команд, которые будут выполняться до и после передачи. Если сервер возвращает ошибку для одной из команд, вся операция будет прервана.

    Эту опцию можно использовать несколько раз.

    --random-file <файл>

    (HTTPS) Укажите путь к файлу, содержащему данные, которые будут считаться случайными. Эти данные используются для заполнения случайного механизма для SSL-соединений. См. Также параметр --egd-file.

    -r / - диапазон <диапазон>

    (HTTP / FTP) Получить диапазон байтов (т.е.e частичный документ) с HTTP / 1.1 или FTP-сервера. Диапазоны можно указать несколькими способами.

    0-499 указывает первые 500 байтов

    500-999 указывает вторые 500 байтов

    -500 указывает последние 500 байтов

    9500 определяет байты от смещения 9500 и вперед

    0-0, -1 указывает только первый и последний байт (*) (H)

    500-700,600-799 определяет 300 байтов от смещения 500 (H)

    100-199,500-599 определяет два отдельных диапазона по 100 байтов (*) (H)

    (*) = ОБРАТИТЕ ВНИМАНИЕ, что это приведет к тому, что сервер ответит составным ответом!

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

    Загрузки диапазона FTP поддерживают только простой синтаксис «старт-стоп» (необязательно с опущением одного из чисел). Это зависит от SIZE команды, отличной от RFC.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -R / - дистанционно-временной

    При использовании это заставит libcurl попытаться определить метку времени удаленного файла, и, если она доступна, локальный файл получит ту же метку времени.

    Если эта опция используется дважды, второй раз ее снова отключает.

    -с / - бесшумный

    Бесшумный режим. Не показывать индикатор выполнения или сообщения об ошибках. Делает Curl беззвучным.

    Если эта опция используется дважды, вторая снова отключит звук.

    -S / - показать ошибку

    При использовании с -s выводит сообщение об ошибке curl в случае сбоя.

    Если этот параметр используется дважды, второй снова отключит отображение ошибки.

    --socks <хост [: порт]>

    Использовать указанный прокси-сервер SOCKS5.Если номер порта не указан, предполагается, что это порт 1080. (опция добавлена ​​в 7.11.1)

    Эта опция отменяет любое предыдущее использование -x / - proxy, поскольку они являются взаимоисключающими.

    Если эта опция используется несколько раз, будет использоваться последняя.

    --stderr <файл>

    Вместо этого перенаправить все записи в stderr в указанный файл. Если имя файла представляет собой простой символ '-', оно вместо этого записывается в стандартный вывод. Этот вариант не имеет смысла, если вы используете оболочку с приличными возможностями перенаправления.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -t / - telnet-option

    Параметры передачи в протокол telnet. Поддерживаемые варианты:

    TTYPE = Устанавливает тип терминала.

    XDISPLOC = Устанавливает расположение X-дисплея.

    NEW_ENV = Устанавливает переменную среды.

    -T / - загружаемый файл <файл>

    Переносит указанный локальный файл на удаленный URL.Если в указанном URL-адресе нет части файла, Curl добавит имя локального файла. ОБРАТИТЕ ВНИМАНИЕ, что вы должны использовать завершающий / в последнем каталоге, чтобы действительно доказать Curl, что нет имени файла, иначе curl будет думать, что ваше последнее имя каталога является именем удаленного файла для использования. Это, скорее всего, приведет к сбою операции загрузки. Если это используется на сервере http (s), будет использоваться команда PUT.

    Используйте имя файла «-» (одиночное тире), чтобы использовать стандартный ввод вместо данного файла.

    До 7.10.8, когда эта опция использовалась несколько раз, использовалась последняя.

    В curl 7.10.8 и более поздних версиях вы можете указать один -T для каждого URL-адреса в командной строке. Каждая пара -T + URL указывает, что загружать и куда. curl также поддерживает "подстановку" аргумента -T, что означает, что вы можете загружать несколько файлов на один URL-адрес, используя тот же стиль подстановки URL-адресов, который поддерживается в URL-адресе, например:

    curl -T "{файл1, файл2}" http://www.uploadtothissite.com

    или даже

    curl -T "img [1-1000].png "ftp://ftp.picturemania.com/upload/

    --trace <файл>

    Включает полный дамп трассировки всех входящих и исходящих данных, включая описательную информацию, в указанный выходной файл. Используйте «-» в качестве имени файла, чтобы вывод был отправлен на стандартный вывод.

    Если эта опция используется несколько раз, будет использоваться последняя. (Добавлено в 7.9.7)

    --trace-ascii <файл>

    Включает полный дамп трассировки всех входящих и исходящих данных, включая описательную информацию, в указанный выходной файл.Используйте «-» в качестве имени файла, чтобы вывод был отправлен на стандартный вывод.

    Это очень похоже на --trace, но без шестнадцатеричной части и показывает только ASCII-часть дампа. Он обеспечивает меньший размер вывода, который может быть легче прочитать неподготовленным людям.

    Если эта опция используется несколько раз, будет использоваться последняя. (Добавлено в 7.9.7)

    -u / - пользователь <пользователь: пароль>

    Укажите пользователя и пароль, которые будут использоваться для аутентификации сервера.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -U / - proxy-user <пользователь: пароль>

    Укажите пользователя и пароль, которые будут использоваться для аутентификации прокси.

    Если эта опция используется несколько раз, будет использоваться последняя.

    --url

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

    Эту опцию можно использовать любое количество раз. Чтобы контролировать, где записан этот URL, используйте параметры -o / - output или -O / - remote-name.

    -v / - подробный

    Делает получение более подробным / разговорчивым. В основном используется для отладки. Строки, начинающиеся с '>', означают данные, отправленные curl, '<' означают данные, полученные curl, которые в обычных случаях скрыты, а строки, начинающиеся с '*', означают дополнительную информацию, предоставляемую curl.

    Обратите внимание, что если вы хотите видеть заголовки HTTP в выходных данных, -i / - include может быть вариантом, который вы ищете.

    Если вы думаете, что этот параметр все еще не дает вам достаточно подробностей, подумайте об использовании --trace или --trace-ascii.

    Если этот параметр используется дважды, второй снова отключит подробные сведения.

    -V / - исполнение

    Отображает информацию о curl и используемой им версии libcurl.

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

    Вторая строка (начинается с «Протоколы:») показывает все протоколы, которые libcurl сообщает о поддержке.

    Третья строка (начинается с «Features:») показывает конкретные функции, которые предлагает libcurl отчеты.Доступные функции включают:

    IPv6

    С этим можно использовать IPv6.

    крб4

    Поддерживается

    Krb4 для ftp.

    SSL

    HTTPS и FTPS поддерживаются.

    libz

    Поддерживается автоматическая распаковка сжатых файлов через HTTP.

    NTLM

    NTLM-аутентификация поддерживается.

    GSS-переговоры

    Поддерживается аутентификация с согласованием.

    Отладка

    Этот curl использует libcurl, созданный с помощью Debug.Это дает больше возможностей для отслеживания ошибок, отладки памяти и т. Д. Только для разработчиков curl!

    AsynchDNS

    Этот curl использует асинхронное разрешение имен.

    СПНЕГО

    Поддерживается аутентификация SPNEGO Negotiate.

    Большой файл

    Этот curl поддерживает передачу больших файлов, файлов размером более 2 ГБ.

    -w / - выписывание <формат>

    Определяет, что отображать после завершенной и успешной операции. Формат представляет собой строку, которая может содержать простой текст, смешанный с любым количеством переменных.Строка может быть указана как «строка», чтобы получить чтение из определенного файла, вы указываете его «@ имя_файла» и чтобы указать curl для чтения формата из стандартного ввода, вы пишете «@ -».

    Переменные, представленные в выходном формате, будут заменены значением или текстом, которые curl сочтет подходящими, как описано ниже. Все переменные указаны как% {variable_name}, и для вывода обычного% вы просто пишете их как %%. Вы можете вывести новую строку с помощью n, возврат каретки с r и пробел с t.

    ПРИМЕЧАНИЕ. Буква% - это специальная буква в среде win32, где все вхождения% должны быть удвоены при использовании этой опции.

    На данный момент доступны следующие переменные:

    url_effective Последний полученный URL. В основном это имеет смысл, если вы сказали curl следовать location: headers.

    http_code Числовой код, который был найден на последней полученной HTTP (S) странице.

    time_total Общее время в секундах, в течение которого длилась полная операция. Время будет отображаться с точностью до миллисекунды.

    time_namelookup Время в секундах, которое прошло от начала до завершения преобразования имени.

    time_connect Время в секундах, которое прошло от начала до завершения подключения к удаленному хосту (или прокси).

    time_pretransfer Время в секундах, которое прошло от начала до начала передачи файла. Сюда входят все команды и согласования перед передачей, которые относятся к конкретному протоколу (протоколам).

    time_starttransfer Время в секундах, которое прошло от начала до момента, когда первый байт вот-вот будет передан.Это включает time_pretransfer, а также время, необходимое серверу для расчета результата.

    size_download Общий объем загруженных байтов.

    size_upload Общий объем загруженных байтов.

    size_header Общий объем загруженных заголовков в байтах.

    size_request Общий объем байтов, отправленных в HTTP-запросе.

    speed_download Средняя скорость загрузки curl, измеренная для полной загрузки.

    speed_upload Средняя скорость загрузки curl, измеренная для полной загрузки.

    content_type Тип содержимого запрошенного документа, если таковой был. (Добавлено в 7.9.5)

    Если эта опция используется несколько раз, будет использоваться последняя.

    -x / - прокси <прокси-хост [: порт]>

    Использовать указанный прокси-сервер HTTP. Если номер порта не указан, предполагается, что это порт 1080.

    Этот параметр отменяет существующие переменные среды, которые задают использование прокси.Если есть переменная среды, устанавливающая прокси, вы можете установить прокси на & zerosp; "", чтобы переопределить его.

    Обратите внимание, что все операции, выполняемые через прокси-сервер HTTP, будут прозрачно преобразованы в HTTP. Это означает, что некоторые операции, специфичные для протокола, могут быть недоступны. Это не тот случай, если вы можете туннелировать через прокси, как это делается с параметром -p / - proxytunnel.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -X / - запрос <команда>

    (HTTP) Задает настраиваемый запрос для использования при обмене данными с HTTP-сервером.Указанный запрос будет использоваться вместо стандартного GET. Прочтите спецификацию HTTP 1.1 для получения подробностей и пояснений.

    (FTP) Задает настраиваемую команду FTP для использования вместо LIST при создании списков файлов с помощью ftp.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -г / - скорость-время <время>

    Если загрузка идет медленнее, чем ограничение скорости в байтах в секунду в течение периода времени скорости, загрузка прерывается. Если используется скорость-время, ограничение скорости по умолчанию будет равно 1, если не установлено с -y.

    Эта опция контролирует передачу и, таким образом, не влияет на медленные соединения и т. Д. Если вас это беспокоит, попробуйте опцию --connect-timeout.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -Y / - ограничение скорости <скорость>

    Если загрузка медленнее, чем заданная скорость в байтах в секунду, в течение секунд скорость-время она прерывается. speed-time устанавливается с помощью -Y и 30, если не установлен.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -z / - time-cond <выражение даты>

    (HTTP) Запрос на получение файла, который был изменен позже указанного времени и даты, или файла, который был изменен до этого времени. Выражение даты может быть всевозможными строками даты или, если оно не соответствует никаким внутренним, вместо этого пытается получить время из заданного имени файла! См. Справочные страницы GNU date (1) или curl_getdate (3) для получения подробной информации о выражении даты.

    Начните выражение даты с тире (-), чтобы запросить документ, который старше указанной даты / времени, по умолчанию это документ, который новее указанной даты / времени.

    Если эта опция используется несколько раз, будет использоваться последняя.

    -Z / - max-redirs <число>

    Установить максимально допустимое количество повторений перенаправления. Если используется -L / - location, то эту опцию можно использовать для предотвращения следования curl за перенаправлениями & zerosp; "in absurdum".

    Если эта опция используется несколько раз, будет использоваться последняя.

    -0 / - http1.0

    (HTTP) Заставляет curl выдавать свои запросы с использованием HTTP 1.0 вместо использования его внутреннего предпочтительного: HTTP 1.1.

    -1 / - tlsv1

    (HTTPS) Заставляет curl использовать TSL версии 1 при согласовании с удаленным сервером TLS.

    -2 / - sslv2

    (HTTPS) Заставляет curl использовать SSL версии 2 при согласовании с удаленным сервером SSL.

    -3 / - sslv3

    (HTTPS) Заставляет curl использовать SSL версии 3 при согласовании с удаленным сервером SSL.

    -4 / - ipv4

    Если libcurl может преобразовывать адрес в несколько версий IP (что так и есть, если он поддерживает IPv6), эта опция указывает libcurl разрешать имена только в адреса IPv4.(Добавлено в 7.10.8)

    -6 / - ipv6

    Если libcurl может преобразовывать адрес в несколько версий IP (что так и есть, если он поддерживает IPv6), эта опция указывает libcurl разрешать имена только в IPv6-адреса. (Добавлено в 7.10.8)

    - # / - индикатор выполнения

    Заставить curl отображать информацию о ходе выполнения в виде индикатора выполнения вместо статистики по умолчанию.

    Если этот параметр используется дважды, второй снова отключит индикатор выполнения.

    ФАЙЛЫ

    ~ /.curlrc

    Файл конфигурации по умолчанию.

    ОКРУЖАЮЩАЯ СРЕДА

    http_proxy [протокол: //] <хост> [: порт]

    Задает использование прокси-сервера для HTTP.

    HTTPS_PROXY [протокол: //] <хост> [: порт]

    Задает использование прокси-сервера для HTTPS.

    FTP_PROXY [протокол: //] <хост> [: порт]

    Задает использование прокси-сервера для FTP.

    GOPHER_PROXY [протокол: //] <хост> [: порт]

    Устанавливает прокси-сервер для использования в GOPHER.

    ALL_PROXY [протокол: //] <хост> [: порт]

    Задает использование прокси-сервера, если прокси-сервер для конкретного протокола не установлен.

    NO_PROXY <список хостов, разделенных запятыми>

    список имен хостов, которые не должны проходить через прокси. Если установлен только звездочка '*', он соответствует всем хостам.

    КОДЫ ВЫХОДА

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

    1

    Неподдерживаемый протокол.Эта сборка curl не поддерживает этот протокол.

    2

    Не удалось инициализировать.

    3

    Неправильный формат URL. Синтаксис неправильный.

    4

    URL-адрес пользователя неверно отформатирован. Пользовательская часть синтаксиса URL-адреса неверна.

    5

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

    6

    Не удалось разрешить хост. Указанный удаленный хост не был разрешен.

    7

    Не удалось подключиться к хосту.

    8

    Странный ответ FTP-сервера. Сервер отправил данные, которые curl не удалось проанализировать.

    9

    Доступ к FTP запрещен. Сервер отказал в входе в систему.

    10

    Неверный пользователь / пароль FTP. Либо один, либо оба не были приняты сервером.

    11

    FTP странный ответ PASS. Curl не смог разобрать ответ, отправленный на запрос PASS.

    12

    FTP странный ответ ПОЛЬЗОВАТЕЛЯ. Curl не смог разобрать ответ, отправленный на запрос USER.

    13

    FTP странный ответ PASV, Curl не смог проанализировать ответ, отправленный на запрос PASV.

    14

    FTP странный формат 227. Curl не смог разобрать 227-строку, отправленную сервером.

    15

    FTP не может получить хост. Не удалось разрешить IP-адрес хоста, который мы получили в строке 227.

    16

    FTP не может повторно подключиться. Не удалось подключиться к узлу, который мы получили в 227-й строке.

    17

    FTP не может установить двоичный файл. Не удалось изменить метод передачи на двоичный.

    18

    Частичный файл. Была перенесена только часть файла.

    19

    FTP не смог загрузить / получить доступ к данному файлу, команда RETR (или аналогичная) не выполнена.

    20

    Ошибка записи FTP. Сервер сообщил о неудачной передаче.

    21

    Ошибка котировки FTP. Команда цитаты вернула с сервера ошибку.

    22

    HTTP-страница не получена. Запрошенный URL не был найден или вернул другую ошибку с кодом ошибки HTTP 400 или выше.Этот код возврата появляется, только если используется -f / - fail.

    23

    Ошибка записи. Curl не мог записывать данные в локальную файловую систему или аналогичную.

    24

    Некорректный пользователь. Имя пользователя указано неверно.

    25

    FTP не удалось сохранить файл. Сервер отклонил операцию STOR, используемую для загрузки по FTP.

    26

    Ошибка чтения. Различные проблемы с чтением.

    27

    Недостаточно памяти. Ошибка запроса выделения памяти.

    28

    Тайм-аут операции. Указанный период тайм-аута был достигнут в соответствии с условиями.

    29

    FTP не может установить ASCII. Сервер вернул неизвестный ответ.

    30

    Ошибка порта FTP. Команда PORT не удалась. Не все FTP-серверы поддерживают команду PORT, попробуйте вместо этого выполнить передачу с помощью PASV!

    31

    FTP не может использовать REST. Команда REST не удалась. Эта команда используется для возобновления передачи по FTP.

    32

    FTP не может использовать SIZE. Команда SIZE не удалась. Команда является расширением исходной спецификации FTP RFC 959.

    33

    Ошибка диапазона HTTP. Диапазон «команда» не работал.

    34

    Ошибка сообщения HTTP. Внутренняя ошибка создания пост-запроса.

    35

    Ошибка подключения SSL. Подтверждение связи SSL не удалось.

    36

    Возобновление плохой загрузки FTP. Не удалось продолжить ранее прерванную загрузку.

    37

    FILE не удалось прочитать файл. Не удалось открыть файл. Разрешения?

    38

    LDAP не может выполнить привязку. Не удалось выполнить операцию привязки LDAP.

    39

    Ошибка поиска LDAP.

    40

    Библиотека не найдена. Библиотека LDAP не найдена.

    41

    Функция не найдена. Требуемая функция LDAP не найдена.

    42

    Прервано обратным вызовом. Приложение приказало curl прервать операцию.

    43

    Внутренняя ошибка. Функция была вызвана с неверным параметром.

    44

    Внутренняя ошибка. Функция была вызвана в неправильном порядке.

    45

    Ошибка интерфейса. Указанный исходящий интерфейс не может быть использован.

    46

    Введен неверный пароль. При вводе пароля возникла ошибка.

    47

    Слишком много перенаправлений. Следуя перенаправлениям, curl достигает максимальной суммы.

    48

    Указана неизвестная опция TELNET.

    49

    Неправильный формат telnet.

    51

    SSL-сертификат удаленного узла не в порядке

    52

    Сервер ничего не ответил, что здесь считается ошибкой.

    53

    Механизм шифрования SSL не найден

    54

    Невозможно установить механизм шифрования SSL по умолчанию

    55

    Ошибка отправки сетевых данных

    56

    Отказ при приеме сетевых данных

    57

    Акция используется (внутренняя ошибка)

    58

    Проблема с локальным сертификатом

    59

    Невозможно использовать указанный шифр SSL

    60

    Проблема с сертификатом CA (путь? Разрешение?)

    61

    Нераспознанная кодировка передачи

    62

    Неверный URL-адрес LDAP

    63

    Превышен максимальный размер файла

    XX

    В будущих выпусках здесь будут появляться другие коды ошибок.