Hola a todos,
Mi script de abajo estaba trabajando bien hasta que cambió la ruta LOGFILE (que inicialmente apunta a un archivo en la misma carpeta de la secuencia de comandos para probar)
Sólo event.log la ruta del archivo se cambia, el resto todavía están en la carpeta actual.
Antes del cambio, de ejecutar la secuencia de obras. Tras el cambio, a partir de la "
sed"Comandos de adelante, no parece gatillo.
Me separaron de la '
sedParte a otra script, y que corrió por su cuenta, por lo tanto, los comandos de trabajo.
Pero de alguna manera poner juntos me parece un gran dolor de cabeza.
¿Necesita ayuda con rapidez.
Gracias.
Código:
#!/bin/sh
integer CURCOUNT
LOGFILE=/var/opt/resmon/log/event.log
#Compare current count line with old count line in oldcount.txt
OLDCOUNT=`cat oldcount.txt | awk '{print $1}'`
CURCOUNT=`wc -l /var/opt/resmon/log/event.log | awk '{print $1}`
if [ "$CURCOUNT" = "$OLDCOUNT" ]; then
echo "NO Change"
exit
else
NEWLINES=`expr $CURCOUNT - $OLDCOUNT`
# Read and output new lines to diffline.txt
STARTLINE=`expr $OLDCOUNT + 1`
LASTLINE=$CURCOUNT
awk -v SL=$STARTLINE -v LL=$LASTLINE '
((NR >=SL) && (NR <=LL)) {print $0}' /var/opt/resmon/log/event.log > diffline.txt
#Updates oldcount.txt with latest value
echo $CURCOUNT > oldcount.txt
exit
fi
sed -ne '/^---/p' -e '/Severity............: CRITICAL/,/^Description of Error/p' -e '/Severity............: MAJORWARNING/,/^Description of Er
ror/p' diffline.txt | sed -ne '/^Severity/p' -e '/^Summary/,/^Description of Error/p' | sed '/^Description/d' | sed '/^$/d' | sed 's/^[ \t]*/
/;s/[ \t]*$//' > diffline2.txt
sed -n '
:a
/Sev/ {
N
/Sev.*Sev/ !{
s/\n/ /
ta
}
P
D
}' diffline2.txt > diffline3.txt