Приховати вихідний завиток


209

Я роблю запит на згортання, де він відображає вихід HTML в консолі, як це

<b>Warning</b>:  Cannot modify header information - headers already sent by (output started at /home/domain/public_html/wp-content/themes/explicit/functions/ajax.php:87) in <b>/home/domain/public_html/wp-content/themes/explicit/functions/ajax.php</b> on line <b>149</b><br />......

тощо

Мені потрібно приховати ці результати під час запуску запитів CURL, спробував запустити CURL так

curl -s 'http://example.com'

Але він все ще відображає вихід, як я можу приховати вихід?

Дякую


1
Додайте >/dev/nullв кінці. Детальніше про Дескриптори файлів читайте
Валентин Байрамі

Відповіді:


323

З man curl

-s, - сильний безшумний або тихий режим. Не показувати вимірювач прогресу або повідомлення про помилки Робить Curl приглушеним. Він все одно виводить запитувані вами дані , можливо навіть до терміналу / stdout, якщо ви не перенаправите їх .

Тож якщо ви не хочете використовувати вихід:

curl -s 'http://example.com' > /dev/null

22
Якщо ви хочете лише помилок, додайте прапор -S curl -s -S ' example.com '> / dev / null
Gonzalo Cao

Зверніть увагу, що ви не можете цього зробити curl -o /dev/null; це призведе до помилки запису.
Кіт Тайлер

Але ви можете зробити, curl ... 2>/dev/nullщоб перенаправити лише stderr.
Jesse Chisholm

2
@KeithTyler curl https://www.google.com -o /dev/nullдосягає успіху без помилок для мене. Я використовую curl-7.58.0.
x-yuri

що, на мій погляд, засоби wgetслід використовувати замість curlзавантаження файлів.
Вишран

70

Цей виглядає для мене більш елегантно:

curl --silent --output /dev/null http://example.com

Крім того, якщо ви хочете побачити HTTP-код:

curl --write-out '%{http_code}' --silent --output /dev/null http://example.com

Повна документація тут .


6
Якщо ви все ще хочете відображати помилки, можете також додати --show-errorпараметр.
Саймон Схід

Навіть використовуючи -sS, він все ще відображає заголовки для мене :(
Freedo,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.