scripts-random/01_bash/curlman.sh

42 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
# Script: check_http_status.sh
# Descripción: Este script verifica el código de estado HTTP de una o varias URL.
# Si se proporciona un archivo de texto como argumento, lee las URL del archivo y muestra
# los códigos de estado HTTP de cada una. Si se proporciona una URL directamente como argumento,
# muestra el código de estado HTTP de esa URL específica.
# Author: Manuel Vergara
# Web: https://vergaracarmona.es
#
COLOR_RED='\033[0;31m'
COLOR_RESET='\033[0m'
# Control de salida con Ctrl + C
function ctrl_c() {
echo -e "${COLOR_RED}\n\n[!] Saliendo... \n${COLOR_RESET}"
tput cnorm
exit 1
}
# Ctrl+C
trap ctrl_c SIGINT
# Función para verificar el código de estado HTTP de una URL
verificar_codigo_estado() {
local url="$1"
local code_web=$(curl -L --write-out "%{http_code}\n" --silent --output /dev/null "$url")
echo "La web $url devuelve el código de error $code_web"
}
# Main
if [ "${1##*.}" == "txt" ]; then
# Si se proporciona un archivo de texto, leer las URL y verificar los códigos de estado HTTP
while read -r line; do
verificar_codigo_estado "$line"
done <"$1"
else
# Si se proporciona una URL directamente, verificar el código de estado HTTP
verificar_codigo_estado "$1"
fi