You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.8 KiB
Bash
58 lines
1.8 KiB
Bash
#!/bin/bash
|
|
# cpdAlerts 2025
|
|
# David Mendaña <david.mendana@yahoo.es>
|
|
# Fanta <fanta@56k.es>
|
|
# Vigilancia del boletines oficiales de diferentes comunidades
|
|
# Dependencias: apt install poppler-utils wget bsd-mailx
|
|
|
|
opt="$1"
|
|
version="0.1"
|
|
actualDate=$(date +"%d-%m-%Y")
|
|
notificationEmails="fanta@56k.es" # permite lista de varios separados por espacio
|
|
keyWords="centro de datos|centos de datos|centro de procesamiento de datos|centros de procesamiento de datos|centro de almacenamiento de datos|centros de almacenamiento de datos|aws|amazon aws|cpd|alcance regional"
|
|
|
|
function sendMail() {
|
|
echo "[+] Resultados encontrados en $2 - $1"
|
|
echo "He encontrado resultados en $1" | mailx -r alertascpds@56k.es -s "Alertas CPDs - Resultados en $2" $notificationEmails
|
|
}
|
|
|
|
function aragon {
|
|
echo "nada aún realizado. Aquí código para buscar en aragón"
|
|
}
|
|
|
|
function barcelona {
|
|
echo "nada aún realizado. Aquí código para buscar en barcelona"
|
|
}
|
|
|
|
function madrid {
|
|
comunidad="Madrid"
|
|
pdfFile=".boletin.pdf"
|
|
mainURL="https://bocm.es"
|
|
pdfURL=$(wget -q $mainURL -O - | grep -i "Descargar el boletín completo" | awk '{ print $12 }' | cut -d "\"" -f 2)
|
|
wget -q $pdfURL -O $pdfFile
|
|
if [ "$(pdftotext $pdfFile - | grep -i -E -n -3 "$keyWords" | tee .cpds_$actualDate | wc -l)" = 0 ]; then echo "0 restultados"; exit; else sendMail $pdfURL $comunidad;fi
|
|
rm -rf .cpds_* .boletin.*
|
|
}
|
|
|
|
function help {
|
|
echo -e "cpdAlerts $version\n"
|
|
echo "--aragon Alertas en Aragon"
|
|
echo "--barcelona Alertas en Barcelona"
|
|
echo "--madrid Alertas en Madrid"
|
|
echo -e "--help Muesta la ayuda\n"
|
|
}
|
|
|
|
function checkOpt {
|
|
if [ -z "$opt" ]; then help; fi
|
|
if [ "$opt" = "--help" ]; then help; fi
|
|
if [ "$opt" = "--aragon" ]; then aragon; fi
|
|
if [ "$opt" = "--barcelona" ]; then barcelona; fi
|
|
if [ "$opt" = "--madrid" ]; then madrid; fi
|
|
}
|
|
|
|
function main() {
|
|
checkOpt
|
|
}
|
|
|
|
main
|