echo ERROR wenn rc!=0

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
decembersoul
Beiträge: 283
Registriert: 16.10.2003 10:25:15

echo ERROR wenn rc!=0

Beitrag von decembersoul » 30.04.2007 16:12:49

Ich habe eine eigene echo fkt die ich in scripten verwende.

Code: Alles auswählen

function errorecho {
if [ $? != 0 ];
then
  emsg="\E[31m\033[1mERROR\033[0m"
else
  emsg=OK;
fi;
echo -en "\r .................................................................$emsg \r";
echo $1
}
Sinn dahinter ist es, ähnlich wie bei einigen distis beim starten, folgende Ausgabe zu erzeugen.

starte apache................................OK
starte mysql..................................ERROR
....

Bin etwas unzufrieden. Wollte mal fragen wie ihr es machen würdet.
Am meisten stört es mich das ich nicht die Linesize raus finden kann. Würde das OK oder ERROR gerne ganz rechts stehen haben.

Benutzeravatar
uljanow
Beiträge: 529
Registriert: 20.09.2005 21:14:00

Beitrag von uljanow » 30.04.2007 18:42:27

Ich würd einfach die /lib/lsb/init-functions verwenden. Zumindest das farbige error ist in Etch vorhanden.

roli
Beiträge: 3174
Registriert: 10.09.2003 17:39:58

Beitrag von roli » 01.05.2007 11:23:16

Hi,

ich wuerde

Code: Alles auswählen

if [ "$?" != 0 ];
verwenden.
Wenn, warum auch immer, die Variable $? mal nicht gesetzt ist, wenn du deine Funktion aufrufst, bekommst du ohne die Anfuehrungszeichen eine Fehlermeldung, das zu wenig Parameter an die Funktion Test übergeben wurden, oder so aehnlich. Das hat mich schon Stunden gekostet, solche Fehler zu finden.
Roland


"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"

Antworten