Hallo,
ich möchte die Tageswerte vom Stromverbrauch / Erzeugung in ein eigenes Log schreiben lassen. Die Daten werden von average zusammengestellt. Ein at zerlegt die Daten und triggert diese in ein Logfile.*23:59:55 {
my ($val,$t0,$t1,$t2);
$val = (fhem "list SWAP_F1 int_bez_cum_day");
$t0 = "Bezug";
$t1 = substr ($val, index($val,"-")-5,11);
$t2 = substr ($val, index($val,":")+6,10);
fhem "trigger Energy_Day $t0 $t1 $t2";
$val = (fhem "list SWAP_F1 int_erz_cum_day");
$t0 = "Erzeugung";
$t1 = substr ($val, index($val,"-")-5,11);
$t2 = substr ($val, index($val,":")+6,10);
fhem "trigger Energy_Day $t0 $t1 $t2";
}
Leider ist zwischen den Einträgen in Log eine Leerzeile. Ich habe schon mit chomp oder chop versucht, dies weg zu bekommen. Aber dann werden die Werte mit abgeschnitten. Das Ändern der Variable $/ auf ' ' war ganz böse - erst wird das Webif zerschossen und dann stürzt fhem ab.
Wie kann ich die Leerzeile auf einfache Weise unterdrücken?
Gruß Christoph
$val =~ s/\n$//g
Hallo Betateilchen,
Danke hat funktioniert. Die regexp sind für mich immer noch böhmische Dörfer, ich komme damit einfach nicht klar.
Gruß Christoph