Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] exec() function wert übergeben

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] exec() function wert übergeben

    This topic has been deleted. Only users with topic management privileges can see it.
    • AlCalzone
      AlCalzone Developer last edited by

      @Farmer-cb:

      ich habe einen exec() aufruf und muss der darin enthaltenen function einen Wert übergeben. `

      So wie du es machst, erzeugst du eine neue Variable im Scope der Funktion, die keinen Wert übergeben bekommt, da exec den 4. Parameter nicht erwartet. Probiere es mal so:

      var meineVariable="halliHallo";
      exec('wget --no-check-certificate -0 - -q "meine aufzurufende URL", function(error,body,stderr){log("wert:"+meineVariable);}
      
      
      1 Reply Last reply Reply Quote 0
      • F
        Farmer-cb last edited by

        Hallo

        habs ausprobiert

        var meineVariable="halliHallo";
        exec('wget --no-check-certificate -0 - -q "meine aufzurufende URL", function(error,body,stderr){log("wert:"+meineVariable);}
        

        kommt leider auch wert:undefined 😞

        1 Reply Last reply Reply Quote 0
        • paul53
          paul53 last edited by

          @Farmer-cb:

          ich habe einen exec() aufruf und muss der darin enthaltenen function einen Wert übergeben. `
          Alles, was mit exec an das auszuführende Kommando (wget) übergeben werden soll, muss innerhalb der Kommandozeile übergeben werden. Beispiel:

          var meineVariable="halliHallo";
          exec('wget --no-check-certificate -0 - -q "meine aufzurufende URL"?' + meineVariable, function(error, stdout, stderr) {
             log(stdout);  // Rückgabe von wget bei erfolgreicher Ausführung
          });
          
          1 Reply Last reply Reply Quote 0
          • F
            Farmer-cb last edited by

            heisst also so geht es nicht 😢

            1 Reply Last reply Reply Quote 0
            • AlCalzone
              AlCalzone Developer last edited by

              ??? Du musst nur das 4. Argument deiner Funktion weglassen, damit diese Zugriff auf die vorher definierte Variable bekommt.

              Hast du meinen Codeschnipsel mal ausprobiert?

              1 Reply Last reply Reply Quote 0
              • F
                Farmer-cb last edited by

                @AlCalzone:

                ??? Du musst nur das 4. Argument deiner Funktion weglassen, damit diese Zugriff auf die vorher definierte Variable bekommt.

                Hast du meinen Codeschnipsel mal ausprobiert? ` Wie ich unter #3 geschrieben habe, funktioniert das leider auch nicht.

                Oder mach ich da noch was verkehrt

                Gesendet von meinem FRD-L09 mit Tapatalk

                1 Reply Last reply Reply Quote 0
                • AlCalzone
                  AlCalzone Developer last edited by

                  @Farmer-cb:

                  Hallo

                  habs ausprobiert

                  var meineVariable="halliHallo";
                  exec('wget --no-check-certificate -0 - -q "meine aufzurufende URL", function(error,body,stderr){log("wert:"+meineVariable);}
                  

                  kommt leider auch wert:undefined 😞 `

                  Hab ich übersehen, sorry. Ist das der vollständige Code? So wie das da steht, dürfte meineVariable im Callback niemals undefined sein.

                  1 Reply Last reply Reply Quote 0
                  • F
                    Farmer-cb last edited by

                    dein Hinweis war richtig

                    hab jetzt nochmal rumgespielt und siehe da, es funktioniert

                    mein Problem war, das ich vor lauter rumspielen, nach dem Log-Befehl nochmal var meineVariable='dd'; geschrieben und das war anscheinend das Problem

                    var meineVariable="halliHallo";
                    exec('wget --no-check-certificate -0 - -q "meine aufzurufende URL", 
                                                 function(error,body,stderr)
                                                                            {
                                                                                log("wert:"+meineVariable);
                                                      der Fehler  ---->  var meine Variable='test';
                                                                            }
                    
                    
                    1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 last edited by

                      Der Log zeigt sicherlich

                      wert:halliHallo
                      

                      Das liegt daran, dass meineVariable im Skript global deklariert und durch die exec-Funktion nicht beeinflusst wird.

                      Es ist wohl nicht das, was Du erreichen wolltest ?

                      1 Reply Last reply Reply Quote 0
                      • F
                        Farmer-cb last edited by

                        Doch, es ist jetzt genau so wie ich es brauchte,

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        918
                        Online

                        31.7k
                        Users

                        79.9k
                        Topics

                        1.3m
                        Posts

                        3
                        11
                        709
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo