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. Blockly
  5. Vorhandene Unterordner auslesen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    535

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

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

Vorhandene Unterordner auslesen

Geplant Angeheftet Gesperrt Verschoben Blockly
21 Beiträge 2 Kommentatoren 1.9k 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.
  • M MCU

    @triplex

    const fs = require("fs");
    const path = "/opt/iobroker/iobroker-data/files/vis.0/Slideshow/";
    
    
    // Funktion: Alle Dateien auslesen
    function getFilesRecursive(directory) {
        let fileList = [];
        try {
            const entries = fs.readdirSync(directory, { withFileTypes: true });
    
            entries.forEach(entry => {
                const fullPath = `${directory}/${entry.name}`;
                if (entry.isFile()) {
                    // Datei hinzufügen
                    fileList.push(fullPath);
                } else if (entry.isDirectory()) {
                    // Rekursiv Unterordner durchsuchen
                    fileList = fileList.concat(getFilesRecursive(fullPath));
                }
            });
        } catch (error) {
            console.error("Fehler beim Auslesen des Verzeichnisses: "+ error);
        }
        return fileList;
    }
    
    // Dateien auslesen
    let files = getFilesRecursive(path);
    
    // Ergebnis ausgeben
    console.log("Gefundene Dateien: "+ files);
    
    T Offline
    T Offline
    TripleX
    schrieb am zuletzt editiert von TripleX
    #3

    @mcu said in Vorhandene Unterordner auslesen:

    @triplex

    const fs = require("fs");
    const path = "/opt/iobroker/iobroker-data/files/vis.0/Slideshow/";
    
    
    // Funktion: Alle Dateien auslesen
    function getFilesRecursive(directory) {
        let fileList = [];
        try {
            const entries = fs.readdirSync(directory, { withFileTypes: true });
    
            entries.forEach(entry => {
                const fullPath = `${directory}/${entry.name}`;
                if (entry.isFile()) {
                    // Datei hinzufügen
                    fileList.push(fullPath);
                } else if (entry.isDirectory()) {
                    // Rekursiv Unterordner durchsuchen
                    fileList = fileList.concat(getFilesRecursive(fullPath));
                }
            });
        } catch (error) {
            console.error("Fehler beim Auslesen des Verzeichnisses: "+ error);
        }
        return fileList;
    }
    
    // Dateien auslesen
    let files = getFilesRecursive(path);
    
    // Ergebnis ausgeben
    console.log("Gefundene Dateien: "+ files);
    

    Wie bekomme ich das denn in Blockly rein?
    Wenn ich das richtig sehe, werden die Dateien ausgelesen.
    Brauche nur die Unterordner.

    M 1 Antwort Letzte Antwort
    0
    • T TripleX

      @mcu said in Vorhandene Unterordner auslesen:

      @triplex

      const fs = require("fs");
      const path = "/opt/iobroker/iobroker-data/files/vis.0/Slideshow/";
      
      
      // Funktion: Alle Dateien auslesen
      function getFilesRecursive(directory) {
          let fileList = [];
          try {
              const entries = fs.readdirSync(directory, { withFileTypes: true });
      
              entries.forEach(entry => {
                  const fullPath = `${directory}/${entry.name}`;
                  if (entry.isFile()) {
                      // Datei hinzufügen
                      fileList.push(fullPath);
                  } else if (entry.isDirectory()) {
                      // Rekursiv Unterordner durchsuchen
                      fileList = fileList.concat(getFilesRecursive(fullPath));
                  }
              });
          } catch (error) {
              console.error("Fehler beim Auslesen des Verzeichnisses: "+ error);
          }
          return fileList;
      }
      
      // Dateien auslesen
      let files = getFilesRecursive(path);
      
      // Ergebnis ausgeben
      console.log("Gefundene Dateien: "+ files);
      

      Wie bekomme ich das denn in Blockly rein?
      Wenn ich das richtig sehe, werden die Dateien ausgelesen.
      Brauche nur die Unterordner.

      M Online
      M Online
      MCU
      schrieb am zuletzt editiert von MCU
      #4

      @triplex javascript-Funktion
      d5756fe5-2627-4dec-8bcc-9d333bbcba64-image.png

      cfd33867-48a9-40ec-a53f-47384e7d8184-image.png

      NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

      T 1 Antwort Letzte Antwort
      0
      • M MCU

        @triplex javascript-Funktion
        d5756fe5-2627-4dec-8bcc-9d333bbcba64-image.png

        cfd33867-48a9-40ec-a53f-47384e7d8184-image.png

        T Offline
        T Offline
        TripleX
        schrieb am zuletzt editiert von
        #5

        @mcu Bei mir im Log wird nichts aufgelistet

        M 1 Antwort Letzte Antwort
        0
        • T TripleX

          @mcu Bei mir im Log wird nichts aufgelistet

          M Online
          M Online
          MCU
          schrieb am zuletzt editiert von
          #6

          @triplex Blockly Export

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="*q;iSs`Id_uTF|HmOp/9">source</variable>
            </variables>
            <block type="procedures_defcustomreturn" id="wKu17Ue=*dW2?C)*:xXk" x="63" y="63">
              <mutation statements="false">
                <arg name="source" varid="*q;iSs`Id_uTF|HmOp/9"></arg>
              </mutation>
              <field name="NAME">getDirectories</field>
              <field name="SCRIPT">Y29uc3QgZnMgPSByZXF1aXJlKCJmcyIpOw0KcmV0dXJuIGZzLnJlYWRkaXJTeW5jKHNvdXJjZSwgeyB3aXRoRmlsZVR5cGVzOiB0cnVlIH0pIC8vIFZlcnplaWNobmlzaW5oYWx0IGxlc2VuDQogICAgICAgIC5maWx0ZXIoZGlyZW50ID0+IGRpcmVudC5pc0RpcmVjdG9yeSgpKSAgICAgICAgICAgLy8gTnVyIFZlcnplaWNobmlzc2UgZmlsdGVybg0KICAgICAgICAubWFwKGRpcmVudCA9PiBkaXJlbnQubmFtZSk7ICAgIA==</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
            </block>
            <block type="debug" id="R}c6u[;J@XF+b}wi;AXM" x="63" y="113">
              <field name="Severity">info</field>
              <value name="TEXT">
                <shadow type="text" id="`du$H!zBIJ2WI^Qfc{35">
                  <field name="TEXT">test</field>
                </shadow>
                <block type="procedures_callcustomreturn" id="=@|Gp=y[k+v#dp3y8ZpW">
                  <mutation name="getDirectories">
                    <arg name="source"></arg>
                  </mutation>
                  <value name="ARG0">
                    <block type="text" id="dc0u.yT2Fh]yCPy1Z7dr">
                      <field name="TEXT">/opt/iobroker/iobroker-data/files/0_userdata.0/jarvis/</field>
                    </block>
                  </value>
                </block>
              </value>
            </block>
          </xml>
          

          NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
          Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

          T 1 Antwort Letzte Antwort
          0
          • M MCU

            @triplex Blockly Export

            <xml xmlns="https://developers.google.com/blockly/xml">
              <variables>
                <variable id="*q;iSs`Id_uTF|HmOp/9">source</variable>
              </variables>
              <block type="procedures_defcustomreturn" id="wKu17Ue=*dW2?C)*:xXk" x="63" y="63">
                <mutation statements="false">
                  <arg name="source" varid="*q;iSs`Id_uTF|HmOp/9"></arg>
                </mutation>
                <field name="NAME">getDirectories</field>
                <field name="SCRIPT">Y29uc3QgZnMgPSByZXF1aXJlKCJmcyIpOw0KcmV0dXJuIGZzLnJlYWRkaXJTeW5jKHNvdXJjZSwgeyB3aXRoRmlsZVR5cGVzOiB0cnVlIH0pIC8vIFZlcnplaWNobmlzaW5oYWx0IGxlc2VuDQogICAgICAgIC5maWx0ZXIoZGlyZW50ID0+IGRpcmVudC5pc0RpcmVjdG9yeSgpKSAgICAgICAgICAgLy8gTnVyIFZlcnplaWNobmlzc2UgZmlsdGVybg0KICAgICAgICAubWFwKGRpcmVudCA9PiBkaXJlbnQubmFtZSk7ICAgIA==</field>
                <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
              </block>
              <block type="debug" id="R}c6u[;J@XF+b}wi;AXM" x="63" y="113">
                <field name="Severity">info</field>
                <value name="TEXT">
                  <shadow type="text" id="`du$H!zBIJ2WI^Qfc{35">
                    <field name="TEXT">test</field>
                  </shadow>
                  <block type="procedures_callcustomreturn" id="=@|Gp=y[k+v#dp3y8ZpW">
                    <mutation name="getDirectories">
                      <arg name="source"></arg>
                    </mutation>
                    <value name="ARG0">
                      <block type="text" id="dc0u.yT2Fh]yCPy1Z7dr">
                        <field name="TEXT">/opt/iobroker/iobroker-data/files/0_userdata.0/jarvis/</field>
                      </block>
                    </value>
                  </block>
                </value>
              </block>
            </xml>
            
            T Offline
            T Offline
            TripleX
            schrieb am zuletzt editiert von
            #7

            @mcu Das muss ich dann hinter die andere Funktion hängen?

            M 1 Antwort Letzte Antwort
            0
            • T TripleX

              @mcu Das muss ich dann hinter die andere Funktion hängen?

              M Online
              M Online
              MCU
              schrieb am zuletzt editiert von MCU
              #8

              @triplex Ist eine neue Funktion, die alte kann gelöscht werden. Du möchtest ja keine Dateien.
              Blockly importieren
              80ee7509-3d4a-4778-a098-807ac016b808-image.png

              96043935-8493-4ed8-abea-2b88e445511b-image.png

              NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
              Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

              T 1 Antwort Letzte Antwort
              0
              • M MCU

                @triplex Ist eine neue Funktion, die alte kann gelöscht werden. Du möchtest ja keine Dateien.
                Blockly importieren
                80ee7509-3d4a-4778-a098-807ac016b808-image.png

                96043935-8493-4ed8-abea-2b88e445511b-image.png

                T Offline
                T Offline
                TripleX
                schrieb am zuletzt editiert von
                #9

                @mcu Dann bekomme ich im Log folgendes angezeigt.

                7df729c0-d5b0-470c-9745-213fdbac5605-image.png

                M 1 Antwort Letzte Antwort
                0
                • T TripleX

                  @mcu Dann bekomme ich im Log folgendes angezeigt.

                  7df729c0-d5b0-470c-9745-213fdbac5605-image.png

                  M Online
                  M Online
                  MCU
                  schrieb am zuletzt editiert von MCU
                  #10

                  @triplex Dein Verzeichnis eintragen

                  /opt/iobroker/iobroker-data/files/vis.0/Slideshow/
                  

                  NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                  Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                  T 1 Antwort Letzte Antwort
                  0
                  • M MCU

                    @triplex Dein Verzeichnis eintragen

                    /opt/iobroker/iobroker-data/files/vis.0/Slideshow/
                    
                    T Offline
                    T Offline
                    TripleX
                    schrieb am zuletzt editiert von
                    #11

                    @mcu Immer noch eine Fehlermeldung

                    2ca9d408-24b9-436b-a827-2d76c72c5ae7-image.png

                    ccdd592e-1cd8-484a-9aac-c00924651ee1-image.png

                    M 1 Antwort Letzte Antwort
                    0
                    • T TripleX

                      @mcu Immer noch eine Fehlermeldung

                      2ca9d408-24b9-436b-a827-2d76c72c5ae7-image.png

                      ccdd592e-1cd8-484a-9aac-c00924651ee1-image.png

                      M Online
                      M Online
                      MCU
                      schrieb am zuletzt editiert von MCU
                      #12

                      @triplex Ist slideshow evtl klein geschrieben?
                      Hast du davor Leerzeichen drin?

                      NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                      T 1 Antwort Letzte Antwort
                      0
                      • M MCU

                        @triplex Ist slideshow evtl klein geschrieben?
                        Hast du davor Leerzeichen drin?

                        T Offline
                        T Offline
                        TripleX
                        schrieb am zuletzt editiert von
                        #13

                        @mcu Nein

                        M 1 Antwort Letzte Antwort
                        0
                        • T TripleX

                          @mcu Nein

                          M Online
                          M Online
                          MCU
                          schrieb am zuletzt editiert von
                          #14

                          @triplex Leerzeichen
                          6707caa1-e125-4e2d-b3d4-e23559afc91c-image.png

                          NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                          Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                          T 2 Antworten Letzte Antwort
                          0
                          • M MCU

                            @triplex Leerzeichen
                            6707caa1-e125-4e2d-b3d4-e23559afc91c-image.png

                            T Offline
                            T Offline
                            TripleX
                            schrieb am zuletzt editiert von
                            #15

                            @mcu Wie kommt das denn dahin...LOL...jetzt gehts...danke Dir.

                            1 Antwort Letzte Antwort
                            0
                            • M MCU

                              @triplex Leerzeichen
                              6707caa1-e125-4e2d-b3d4-e23559afc91c-image.png

                              T Offline
                              T Offline
                              TripleX
                              schrieb am zuletzt editiert von
                              #16

                              @mcu Wie kann ich die Funktion denn über einen Trigger auslösen in Blockly?
                              Finde da gerade nicht den passenden Block.

                              M 1 Antwort Letzte Antwort
                              0
                              • T TripleX

                                @mcu Wie kann ich die Funktion denn über einen Trigger auslösen in Blockly?
                                Finde da gerade nicht den passenden Block.

                                M Online
                                M Online
                                MCU
                                schrieb am zuletzt editiert von MCU
                                #17

                                @triplex Kommt darauf an, was ihn auslösen soll?
                                5a6b3cf8-2fe1-4eae-aa6f-80914e3b5515-image.png

                                00e2af11-6328-4097-ae49-c52f4d7aefc9-image.png

                                NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                T 1 Antwort Letzte Antwort
                                0
                                • M MCU

                                  @triplex Kommt darauf an, was ihn auslösen soll?
                                  5a6b3cf8-2fe1-4eae-aa6f-80914e3b5515-image.png

                                  00e2af11-6328-4097-ae49-c52f4d7aefc9-image.png

                                  T Offline
                                  T Offline
                                  TripleX
                                  schrieb am zuletzt editiert von
                                  #18

                                  @mcu Im Idealfall wenn ich einen neuen Ordner angelegt habe oder alle x Minuten.

                                  M 1 Antwort Letzte Antwort
                                  0
                                  • T TripleX

                                    @mcu Im Idealfall wenn ich einen neuen Ordner angelegt habe oder alle x Minuten.

                                    M Online
                                    M Online
                                    MCU
                                    schrieb am zuletzt editiert von MCU
                                    #19

                                    @triplex Wird erst ausgeführt, wenn eine Datei hinzugefügt wird. Ein Verzeichnis hinzufügen reicht nicht, ist aber auch nicht normal, da man ja dort auch Dateien einstellt.

                                    0914ad3c-5997-4d52-a009-65378da05517-image.png

                                    Du musst bei Dir für VIS die vis-Dateien in ObjectID (meta) auswählen.

                                    c990676b-ea4b-423d-b107-3e66c64233e7-image.png

                                    NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                    Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                    1 Antwort Letzte Antwort
                                    0
                                    • T Offline
                                      T Offline
                                      TripleX
                                      schrieb am zuletzt editiert von
                                      #20

                                      @mcu Hab das nicht so ganz verstanden.
                                      Reagiert das Programm dann nicht auf alle Änderungen die unterhalb von von "Vis\0" passieren und nicht nur auf die Änderungen im Ordner "Slideshow"?

                                      M 1 Antwort Letzte Antwort
                                      0
                                      • T TripleX

                                        @mcu Hab das nicht so ganz verstanden.
                                        Reagiert das Programm dann nicht auf alle Änderungen die unterhalb von von "Vis\0" passieren und nicht nur auf die Änderungen im Ordner "Slideshow"?

                                        M Online
                                        M Online
                                        MCU
                                        schrieb am zuletzt editiert von
                                        #21

                                        @triplex Also doch verstanden.
                                        statt * -> Slideshow/*

                                        NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                                        Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                                        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

                                        326

                                        Online

                                        32.5k

                                        Benutzer

                                        81.8k

                                        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