Hi all,
Saját script alatt működik jól, amíg én változtatott a naplófájl elérési útja (amely eredetileg a pontokat, hogy a fájl az ugyanabban a mappában a script for testing)
Csak a event.log fájl útvonala nem változik, a többiek még mindig az aktuális mappában.
Mielőtt a változás, a futó szkript működését. Miután a változás, az "
sed"Parancs kezdve nem tűnik a ravaszt.
Én elkülönítette "
sed"Részt egy másik forgatókönyvet, és futott, hogy saját, ezért a parancsok.
De valahogy olyan, hogy együtt úgy tűnik, hogy adjon nekem egy nagy fejfájás.
Segítségre van szüksége gyorsan.
Köszönöm.
Kód:
#!/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