Parameter für system()-Befehl

Begonnen von prinzc, 21 Mai 2015, 15:49:29

Vorheriges Thema - Nächstes Thema

prinzc

Hallo!

Ich würde gerne Folgendes umsetzen:
Wenn mein Sensor, den Status ändert, dann würde ich gerne ein System-Skript ausführen, das als Parameter den aktuellen Status des Sensors bekommt.
Irgendwie schaffe ich es nicht, ReadingsVal() innerhalb des System-Befehls zu verwenden. Wie mache ich das?

Sensor:.* { my $val = ReadingsVal("Sensor","state","open");;
system('perl /home/script.pl  $val');;}


Bin für jede Hilfe dankbar!


flurin

Zitat von: prinzc am 21 Mai 2015, 15:49:29
Hallo!

Ich würde gerne Folgendes umsetzen:
Wenn mein Sensor, den Status ändert, dann würde ich gerne ein System-Skript ausführen, das als Parameter den aktuellen Status des Sensors bekommt.
Irgendwie schaffe ich es nicht, ReadingsVal() innerhalb des System-Befehls zu verwenden. Wie mache ich das?

Sensor:.* { my $val = ReadingsVal("Sensor","state","open");;
system('perl /home/script.pl  $val');;}


Bin für jede Hilfe dankbar!

Hast du ein notify verwendet?
wenn ja, was zeigt:


list notify_name

JoWiemann

Zitat von: prinzc am 21 Mai 2015, 15:49:29
Sensor:.* { my $val = ReadingsVal("Sensor","state","open");;
system('perl /home/script.pl  $val');;}


Probiere mal:
Sensor:.* { my $val = ReadingsVal("Sensor","state","open");;
system("perl /home/script.pl  '$val'");;}


Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

prinzc

Zitat von: JoWiemann am 21 Mai 2015, 17:06:13
Probiere mal:
Sensor:.* { my $val = ReadingsVal("Sensor","state","open");;
system("perl /home/script.pl  '$val'");;}


Grüße Jörg

TATSÄCHLICH! Vielen Dank! Das war das Problem. Dankeschön!