¿Cómo consigo que cURL no muestre la barra de progreso?

Resuelto adammenges asked hace 13 años • 7 respuestas

Estoy intentando usar cURL en un script y hacer que no muestre la barra de progreso.

Probé las opciones -s, -silent, -Sy -quiet, pero ninguna funciona.

Aquí hay un comando típico que he probado:

curl -s http://google.com > temp.html

Solo obtengo la barra de progreso cuando la envío a un archivo, por lo que curl -s http://google.comno tiene una barra de progreso, pero curl -s http://google.com > temp.htmlla tiene.

adammenges avatar Sep 11 '11 01:09 adammenges
Aceptado
curl -s http://google.com > temp.html

funciona para curl versión 7.19.5 en Ubuntu 9.10 (sin barra de progreso). Pero si por alguna razón eso no funciona en tu plataforma, siempre puedes redirigir stderr a /dev/null:

curl  http://google.com 2>/dev/null > temp.html
unutbu avatar Sep 10 '2011 19:09 unutbu

En curl versión 7.22.0 en Ubuntu y 7.24.0 en OSX, la solución para no mostrar el progreso pero sí mostrar errores es usar -s( --silent) y -S( --show-error) de esta manera:

curl -sS http://google.com > temp.html

Esto funciona tanto para la salida redirigida > /some/filecomo para la salida canalizada | lessy la salida directamente al terminal para mí.

Actualización : desde curl 7.67.0 hay una nueva opción --no-progress-meterque hace precisamente esto y nada más, consulte la respuesta de clonejo para más detalles.

chmac avatar Jan 14 '2014 09:01 chmac