FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: wkarl am 07 Januar 2013, 21:03:58

Titel: perl - until (Kondition) greift nicht
Beitrag von: wkarl am 07 Januar 2013, 21:03:58
Hallo,

ich habe das perl vom fhem für die FB7270 auf einen USB Stick an der FB kopiert und die Umgebungsvariablen entsprechend gesetzt. perl funktioniert auch soweit ich dies als Anfänger beurteilen kann.
Jetzt möchte ich nach einem bestimmten lan device suchen.
Mit folgendem script:
Zitat#!/var/media/ftp/CHIPSBNK-v2-0-33-01/perl/perl -w

use warnings;
use strict;

my $ldnr = -1;
my $ldname = "";
my $ldsearch = $ARGV[0];
my $ldstatus = 0;

do {
        $ldnr++;
        $ldname = `/usr/bin/ctlmgr_ctl r landevice settings/landevice\"$ldnr\"/name`;
} until ($ldname eq "er" || $ldname eq "-1" || $ldname eq $ldsearch)
Jedoch kommt die greifen die Abgruchkriterien von until nicht.
Wer kann mir helfen?

Danke und ciao walter
Titel: Aw: perl - until (Kondition) greift nicht
Beitrag von: wkarl am 08 Januar 2013, 08:36:21
Hallo,

hab die Lösung gefunden:
der Aufruf
Zitat$ldname = `/usr/bin/ctlmgr_ctl r landevice settings/landevice\"$ldnr\"/name`;
liefer als $ldname einen string mit \n am Ende. Mit chomp ($ldname) wird dies entfernt und until() funktioniert wie es soll.

ciao walter