Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Skript EXEC geht nicht

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.2k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Skript EXEC geht nicht

Geplant Angeheftet Gesperrt Verschoben JavaScript
19 Beiträge 4 Kommentatoren 907 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • BananaJoeB BananaJoe

    @namrenner
    Erstelle einen Ordner C:\temp\ und ändere ggf. die Berechtigungen das der Benutzer iobroker schreiben darf.

    exec('echo cmd.exe /c start "psshutdown.exe -r \\192.168.1.2 -u xxxxxx -p xxxxxx" >c:\temp\test.txt', function(err, stdout, stderr) {
        if (err) {
            log(err,'err');
            log(stderr,'stderr');
            log(stdout,'stdout');
            return;
         }
     });
    
    NamrennerN Offline
    NamrennerN Offline
    Namrenner
    schrieb am zuletzt editiert von
    #5

    @bananajoe
    bekomme Zugriff verweigert
    haben den Ordner für jeder Berechtigung geben

    1 Antwort Letzte Antwort
    0
    • NamrennerN Offline
      NamrennerN Offline
      Namrenner
      schrieb am zuletzt editiert von
      #6

      habe anderen Ordner genommen D:\Iobroker.
      Bekomme keine Meldung und den Ordner ist auch keine Datei test.txt drin

      BananaJoeB 1 Antwort Letzte Antwort
      0
      • NamrennerN Namrenner

        habe anderen Ordner genommen D:\Iobroker.
        Bekomme keine Meldung und den Ordner ist auch keine Datei test.txt drin

        BananaJoeB Offline
        BananaJoeB Offline
        BananaJoe
        Most Active
        schrieb am zuletzt editiert von BananaJoe
        #7

        @namrenner mir ist heute beim Kochen noch was dazu eingefallen:
        psshutdown.exe ist doch aus der Sysinternalsuite? da muss man doch einmal die Lizenzbedingungen annehmen - und das kannst du nicht. Du müsstest die psshutdown.exe einmal als Benutzer iobroker starten und die Bedingungen annehmen.

        Die Lizenzbedingungen muss man einmal pro *.exe annehmen

        ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

        1 Antwort Letzte Antwort
        0
        • NamrennerN Offline
          NamrennerN Offline
          Namrenner
          schrieb am zuletzt editiert von
          #8

          @bananajoe
          Danke, leider habe ich wenig Erfahrung, wie mache dies nun?

          Was komisch ist, wenn ich per Skript in js, kommt nichts, per blockly, ist die Datei test.txt da, aber der Befehl geht nicht.

          BananaJoeB SokomotoS 2 Antworten Letzte Antwort
          0
          • NamrennerN Namrenner

            @bananajoe
            Danke, leider habe ich wenig Erfahrung, wie mache dies nun?

            Was komisch ist, wenn ich per Skript in js, kommt nichts, per blockly, ist die Datei test.txt da, aber der Befehl geht nicht.

            BananaJoeB Offline
            BananaJoeB Offline
            BananaJoe
            Most Active
            schrieb am zuletzt editiert von
            #9

            @namrenner was steht drin der datei?

            Und mangels Testsystem (ich bin zwar eingefleischter Windows-Benutzer, aber ioBroker läuft unter Linux) kann ich dir auch keine Schritt-für-Schritt Anleitung ermitteln.
            Klick die psshutdown.exe mal an das die markiert ist, drück die linke Shift (Großschreib-)taste und dann ein Rechtsklick.
            Im Menü gleich ziemlich oben sollte ein Als anderer Benutzer ausführen erscheinen. Und da nimmst du den ioBroker-Benutzer

            ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

            NamrennerN 1 Antwort Letzte Antwort
            0
            • NamrennerN Namrenner

              @bananajoe
              Danke, leider habe ich wenig Erfahrung, wie mache dies nun?

              Was komisch ist, wenn ich per Skript in js, kommt nichts, per blockly, ist die Datei test.txt da, aber der Befehl geht nicht.

              SokomotoS Offline
              SokomotoS Offline
              Sokomoto
              schrieb am zuletzt editiert von
              #10

              @namrenner sagte in Skript EXEC geht nicht:

              @bananajoe
              Danke, leider habe ich wenig Erfahrung, wie mache dies nun?

              Was komisch ist, wenn ich per Skript in js, kommt nichts, per blockly, ist die Datei test.txt da, aber der Befehl geht nicht.

              Probiere mal das im JS aus:

              exec('cmd.exe /c dir c:\\temp >c:/temp/test.txt', function(err, stdout, stderr) {
                  if (err) {
                      log(err,'err');
                      log(stderr,'stderr');
                      log(stdout,'stdout');
                      return;
                   }
              });
              
              

              Bei mir wird hier eine Datei mit dem Inhalt des Ordners angelegt. Das Problem scheint der Parameter start im Befehl "exec('cmd.exe /c start" zu sein. Sobald ich diesen Parameter mit benutze, hängt sich der cmd Process auf und kann nur noch über den Task gekillt werden.

              NamrennerN 1 Antwort Letzte Antwort
              0
              • SokomotoS Sokomoto

                @namrenner sagte in Skript EXEC geht nicht:

                @bananajoe
                Danke, leider habe ich wenig Erfahrung, wie mache dies nun?

                Was komisch ist, wenn ich per Skript in js, kommt nichts, per blockly, ist die Datei test.txt da, aber der Befehl geht nicht.

                Probiere mal das im JS aus:

                exec('cmd.exe /c dir c:\\temp >c:/temp/test.txt', function(err, stdout, stderr) {
                    if (err) {
                        log(err,'err');
                        log(stderr,'stderr');
                        log(stdout,'stdout');
                        return;
                     }
                });
                
                

                Bei mir wird hier eine Datei mit dem Inhalt des Ordners angelegt. Das Problem scheint der Parameter start im Befehl "exec('cmd.exe /c start" zu sein. Sobald ich diesen Parameter mit benutze, hängt sich der cmd Process auf und kann nur noch über den Task gekillt werden.

                NamrennerN Offline
                NamrennerN Offline
                Namrenner
                schrieb am zuletzt editiert von
                #11

                @sokomoto said in Skript EXEC geht nicht:

                cmd.exe /c dir c:\temp >c:/temp/test.txt

                Hallo, danke, so ging es nicht.
                Aber so geht es:

                exec('cmd.exe /c dir "c:/temp" >c:/temp/test.txt', function(err, stdout, stderr) {
                
                    if (err) {
                
                        log(err,'err');
                
                        log(stderr,'stderr');
                
                        log(stdout,'stdout');
                
                        return;
                
                     }
                
                 });
                
                NamrennerN 1 Antwort Letzte Antwort
                0
                • NamrennerN Namrenner

                  @sokomoto said in Skript EXEC geht nicht:

                  cmd.exe /c dir c:\temp >c:/temp/test.txt

                  Hallo, danke, so ging es nicht.
                  Aber so geht es:

                  exec('cmd.exe /c dir "c:/temp" >c:/temp/test.txt', function(err, stdout, stderr) {
                  
                      if (err) {
                  
                          log(err,'err');
                  
                          log(stderr,'stderr');
                  
                          log(stdout,'stdout');
                  
                          return;
                  
                       }
                  
                   });
                  
                  NamrennerN Offline
                  NamrennerN Offline
                  Namrenner
                  schrieb am zuletzt editiert von Namrenner
                  #12

                  psshutdown geht nicht, Datei leer und kann auch nicht mehr die Datei löschen.
                  Beim aktivieren steht:
                  javascript.0 (22836) script.js.Haus.Skript_1: Unknown severity level "err" by log of [Error: Command failed: cmd.exe /c psshutdown >c:/temp/test3.txt Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird. ]

                  scheint das die ganze Zeit was versucht, wie bekomme dies beendet?

                  SokomotoS 1 Antwort Letzte Antwort
                  0
                  • BananaJoeB BananaJoe

                    @namrenner was steht drin der datei?

                    Und mangels Testsystem (ich bin zwar eingefleischter Windows-Benutzer, aber ioBroker läuft unter Linux) kann ich dir auch keine Schritt-für-Schritt Anleitung ermitteln.
                    Klick die psshutdown.exe mal an das die markiert ist, drück die linke Shift (Großschreib-)taste und dann ein Rechtsklick.
                    Im Menü gleich ziemlich oben sollte ein Als anderer Benutzer ausführen erscheinen. Und da nimmst du den ioBroker-Benutzer

                    NamrennerN Offline
                    NamrennerN Offline
                    Namrenner
                    schrieb am zuletzt editiert von
                    #13

                    @bananajoe
                    das Problem ist, der Benutzter ioBroker gibt es nicht in Windows.

                    1 Antwort Letzte Antwort
                    0
                    • NamrennerN Offline
                      NamrennerN Offline
                      Namrenner
                      schrieb am zuletzt editiert von
                      #14

                      Habe nun ioBroker auf mein Systen Benutzter Dienst gestartet, nun geht es, aber
                      wieder ein anderer Fehler mit:

                      exec("psshutdown -r \\192.168.1.2", function(err, stdout, stderr) {
                      
                          if (err) {
                      
                              log(err,'err');
                      
                              log(stderr,'stderr');
                      
                              log(stdout,'stdout');
                      
                              return;
                      
                           }
                      
                       });
                      

                      javascript.0 (4084) script.js.Haus.Skript_1: Unknown severity level "err" by log of [Error: Command failed: psshutdown -r \192.168.1.2 ]

                      Problem ist das er nicht "\\192.168.1.2" an nimmt, sondern \192.168.1.2, wie kann dieses Problem lösen?

                      AlCalzoneA 1 Antwort Letzte Antwort
                      0
                      • NamrennerN Namrenner

                        Habe nun ioBroker auf mein Systen Benutzter Dienst gestartet, nun geht es, aber
                        wieder ein anderer Fehler mit:

                        exec("psshutdown -r \\192.168.1.2", function(err, stdout, stderr) {
                        
                            if (err) {
                        
                                log(err,'err');
                        
                                log(stderr,'stderr');
                        
                                log(stdout,'stdout');
                        
                                return;
                        
                             }
                        
                         });
                        

                        javascript.0 (4084) script.js.Haus.Skript_1: Unknown severity level "err" by log of [Error: Command failed: psshutdown -r \192.168.1.2 ]

                        Problem ist das er nicht "\\192.168.1.2" an nimmt, sondern \192.168.1.2, wie kann dieses Problem lösen?

                        AlCalzoneA Offline
                        AlCalzoneA Offline
                        AlCalzone
                        Developer
                        schrieb am zuletzt editiert von
                        #15

                        @namrenner \ ist ein Escape-Zeichen in Javascript. Du must \\\\ schreiben, um zwei \\ zu erhalten.

                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                        NamrennerN 1 Antwort Letzte Antwort
                        0
                        • NamrennerN Namrenner

                          psshutdown geht nicht, Datei leer und kann auch nicht mehr die Datei löschen.
                          Beim aktivieren steht:
                          javascript.0 (22836) script.js.Haus.Skript_1: Unknown severity level "err" by log of [Error: Command failed: cmd.exe /c psshutdown >c:/temp/test3.txt Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird. ]

                          scheint das die ganze Zeit was versucht, wie bekomme dies beendet?

                          SokomotoS Offline
                          SokomotoS Offline
                          Sokomoto
                          schrieb am zuletzt editiert von
                          #16

                          @namrenner sagte in Skript EXEC geht nicht:

                          psshutdown geht nicht, Datei leer und kann auch nicht mehr die Datei löschen.
                          Beim aktivieren steht:
                          javascript.0 (22836) script.js.Haus.Skript_1: Unknown severity level "err" by log of [Error: Command failed: cmd.exe /c psshutdown >c:/temp/test3.txt Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird. ]

                          scheint das die ganze Zeit was versucht, wie bekomme dies beendet?

                          Das geht nur über den Taskmanager...

                          8990ffae-2454-4775-a5e4-00d1dd5b5a4a-image.png

                          ...da hängt der cmd process.

                          1 Antwort Letzte Antwort
                          0
                          • AlCalzoneA AlCalzone

                            @namrenner \ ist ein Escape-Zeichen in Javascript. Du must \\\\ schreiben, um zwei \\ zu erhalten.

                            NamrennerN Offline
                            NamrennerN Offline
                            Namrenner
                            schrieb am zuletzt editiert von
                            #17

                            @alcalzone danke, nun geht es

                            1 Antwort Letzte Antwort
                            0
                            • BananaJoeB Offline
                              BananaJoeB Offline
                              BananaJoe
                              Most Active
                              schrieb am zuletzt editiert von
                              #18

                              Also es funktioniert jetzt?
                              Wenn ich so drüber nachdenke hatten wir beim letzten mal unter Windows glaube ich den ioBroker-Dienst unter einen anderem Benutzer starten lassen, also dem Anmeldebenutzer

                              ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                              NamrennerN 1 Antwort Letzte Antwort
                              0
                              • BananaJoeB BananaJoe

                                Also es funktioniert jetzt?
                                Wenn ich so drüber nachdenke hatten wir beim letzten mal unter Windows glaube ich den ioBroker-Dienst unter einen anderem Benutzer starten lassen, also dem Anmeldebenutzer

                                NamrennerN Offline
                                NamrennerN Offline
                                Namrenner
                                schrieb am zuletzt editiert von
                                #19

                                @bananajoe ja, Danke

                                1 Antwort Letzte Antwort
                                0
                                Antworten
                                • In einem neuen Thema antworten
                                Anmelden zum Antworten
                                • Älteste zuerst
                                • Neuste zuerst
                                • Meiste Stimmen


                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                841

                                Online

                                32.5k

                                Benutzer

                                81.7k

                                Themen

                                1.3m

                                Beiträge
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                ioBroker Community 2014-2025
                                logo
                                • Anmelden

                                • Du hast noch kein Konto? Registrieren

                                • Anmelden oder registrieren, um zu suchen
                                • Erster Beitrag
                                  Letzter Beitrag
                                0
                                • Home
                                • Aktuell
                                • Tags
                                • Ungelesen 0
                                • Kategorien
                                • Unreplied
                                • Beliebt
                                • GitHub
                                • Docu
                                • Hilfe