Sie können grep für diesen Einsatz:
grep -q "RC = [^0]" logfile && {
echo "Logfile is a failure"
other commands
exit
}
Die -q
setzt grep
in Ruhe-Modus: keine Ausgabe, die [^0]
passt zu jedem Wert ungleich Null für RC. Grep wird einen Fehlerstatus zurückgeben, wenn keine Übereinstimmungen gefunden werden und ein Erfolgsstatus, falls vorhanden. Die &&
ist eine bedingte "und" Also, wenn es irgendwelche Werte ungleich Null für RC gibt, dann wird die Grep erfolgreich sein und der Test ist ein Fehler.
Alternativ können Sie die grep
in eine if
Anweisung setzen. In diesem Fall:
if grep -s "RC = [^0]" logfile
then
echo "Logfile is a failure"
else
echo "Logfile is a success"
fi
Siehe man grep
für mehr grep Optionen.
Was hast du geschrieben? – codeforester