Comprobar la respuesta HTTP de un listado de URLs

En esta entrada vamos a ver una forma sencilla de comprobar el codigo HTTP de respuesta para un listado grande de URLs

Este puede servirnos si tenemos un gran listado de URLs y queremos saber cuales de ellos fallan. En mi caso, tenía un listado de imágenes de una tienda y me estaban fallando la gran mayoría, por lo que me decidí a comprobar cuales de ellas devolvían un HTTP 200 y cuales un HTTP 404.

Para comprobar la respuesta HTTP del listado de urls, lo primero que tenemos que hacer es colocar el listado en un archivo de texto, una por línea. En mi caso lo he llamado listado.txt

Lo siguiente que debemos hacer es lanzar el siguiente comando

while read linea; do echo -n "$linea : "; curl -o /dev/null --silent --head --write-out '%{http_code}' "$linea"; echo " "; done < listado.txt

Con esto, obtendremos una linea que incluirá la URL y el codigo de respuesta HTTP que devuelve el servidor para la misma