Tengo el siguiente script para verificar el tamaño de mi archivo de registro. Si crece más allá de 84M, se le debe cambiar el nombre con la fecha actual y mi aplicación generará automáticamente una nueva. Sin embargo, no se ejecuta automáticamente mediante tareas cron. Ayúdame a agregar código para verificar si llega a 84M para enviarme un correo electrónico y luego puedo ejecutar el script manualmente.
#!/bin/bash
#Andrew O. MBX 2016-01-26
#HansaWorld Script to Check Size of Hansa.log file
# and move it to a new folder HansaLogs
tstamp=$(date "+%m%d%Y") #Set Timestamp
logdir="/u/HansaWorldLive/HansaLogs" #Set path to where hansa.log will be moved
logname="/u/HansaWorldLive/hansa.log" #Set Path to hansa.log file
maximumsize= +83500K #Set maximumsize
actualsize=$(wc -c<"$logname")
if [ $actualsize -ge $maximumsize ]; then
mv "$logname" "$logdir/hansa_${tstamp}.log" #Move the Log file and rename by adding timestamp
else
echo size is under $maximumsize bytes
exit 1
fi
Respuesta1
sudo gedit /etc/crontab
Agregue la siguiente línea al final del documento:
00 * * * * MYUSERNAME bash /path/to/my/file &> /dev/null
Esto ejecutará /path/to/my/file
with bash cada hora, si desea cambiar la frecuencia, lea más sobreCronTab.
En cuanto al envío de correo electrónico, esa es una configuración mucho más amplia para otra pregunta que ya ha sido respondida.Algo como estoEs un comienzo, pero Google es tu amigo para este.