Відповіді:
Ви можете використовувати -oкомутатор та nullпсевдофайл:
curl -s -o /dev/null -v http://google.com
curl -s -o nul -v http://google.com
-s -o nulале на моїй машині Windows curl -s -o nul -v http://{internal-host}/{internal-uri}виводить весь html-сторінку сторінки - я намагався, curl -s -o nul -v http://google.comі вона придушує вихід, як очікувалося, тому я не розумію, чому це не працює для мого внутрішнього сайту
-oвказує лише один вихід URL-адрес: якщо у вас є кілька URL-адрес, він буде відкинути лише перший :(
Ось спосіб придушити всі результати витоку та заголовки, з можливістю все-таки відображати помилки, якщо вони виникають. Корисно для завдань на крон або автоматизованого тестування.
Щоб придушити весь вихід:
curl --silent --output /dev/null http://example.com
Щоб придушити вихід, але все ж показувати помилки, якщо вони трапляються:
curl --silent --output /dev/null --show-error --fail http://example.com
Щоб придушити весь вихід:
curl --silent --output nul http://example.com
Щоб придушити вихід, але все ж показувати помилки, якщо вони трапляються:
curl --silent --output nul --show-error --fail http://example.com
--silentпригнічує статистику завантаження (але все одно показуватиме вихід HTML),
--output /dev/nullприховує успішний вихід,
--show-errorпоказує помилки, навіть коли silentрежим увімкнено
--fail, помилка, якщо відповідь HTTP є кодом помилки (404, 500 тощо) замість просто DNS / Помилки TCP.
ОНОВЛЕННЯ: Я розумію, що оригінальний автор хотів перевірити заголовки та код відповіді запиту, а не замовчувати все . Детальну інформацію про те, як це зробити, див. У відповіді самоеля .
curl -vo/dev/null/ curl -voNUL… і я не знаю, чи є портативний варіант цього, хрм… ;-).
curl -Ssfo /dev/null url. Але будьте приємні майбутнім обслуговувачам.
Коли ви хочете показати заголовки, але приховати тіло відповіді, ви хочете використовувати:
curl -sIXGET http://somedomain.com/your/url
Я використовував curl -I http://somedomain.com/your/urlдля показу лише заголовки відповідей. Проблема в цьому полягає в тому, що він робить запит, використовуючи HEADметод, який не є хорошим, коли ви хочете протестувати виклик API, який відповідає лише на GETзапит. Це те -X GET, для чого це, воно змінює запит на a GET.
Отже, підсумовуючи:
-sприховує смуги прогресу від виводу (особливо корисно при переході до іншої програми)
-Iпоказує заголовки (але робить HEADзапит)
-XGETперетворює запит назад у GETзапит
див .: http://www.woolie.co.uk/article/curl-full-get-request-dropping-body/
curl -iробить точно те саме.
-iвключає HTTP-заголовок у висновку, а також тіло. Спробуй це. curl -i http://google.comне те саме, щоcurl -IXGET http://google.com
curl -I urlдостатньо і має той же ефект. Мені просто потрібно було перевірити, чи реагує URL-адреса. Це питання теж стосувалося придушення організму, що HEADдобре.