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. Script für Ordner löschen auf einem NAS

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Script für Ordner löschen auf einem NAS

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
blocklyjavascript
12 Beiträge 3 Kommentatoren 745 Aufrufe 1 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.
  • N Nordischerjung

    Moin,

    ich habe mehrere Kameras (Reolink), die per Motion auf meinem NAS Aufzeichnungen speichern, Nun möchte ich diese gerne über die VIS manuell löschen.
    Die Ordner Struktur ist folgende :
    Videos/Kamera Eingang/2023 /04
    Ich möchte nun über ein Dropdown einmal die Kamera auswählen (also Ordner zB Kamera Eingang) dann welches Jahr (zb 2023) und welcher Monat (zB 04)
    Wenn ich diese Dropdowns ausgewählt habe möchte ich einen Button betätigen und diesen eingestellten Ordner dann löschen. Wie kann ich das am Besten mit Blockly oder Javascript lösen? Ich habe Datenpunkte Kamera Name als String, Jahr als Number und Moinat als Number. Wie baue ich jetzt den Ordnernamen zusammen? Wie kann ich auf NAS zugreifen?

    T Offline
    T Offline
    TT-Tom
    schrieb am zuletzt editiert von
    #2

    @nordischerjung

    Ich habe Datenpunkte Kamera Name als String, Jahr als Number und Moinat als Number. Wie baue ich jetzt den Ordnernamen zusammen? Wie kann ich auf NAS zugreifen?

    Steht in diesem Datenpunkten die Daten schon drin oder sollen dort die Daten aus den Dropdown-Menü rein?

    Ist der Pfad auf dem NAS gemountet ins Iobroker System??

    Gruß Tom
    https://github.com/tt-tom17
    Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

    NSPanel Script Wiki
    https://github.com/joBr99/nspanel-lovelace-ui/wiki

    NSPanel Adapter Wiki
    https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

    N 1 Antwort Letzte Antwort
    0
    • T TT-Tom

      @nordischerjung

      Ich habe Datenpunkte Kamera Name als String, Jahr als Number und Moinat als Number. Wie baue ich jetzt den Ordnernamen zusammen? Wie kann ich auf NAS zugreifen?

      Steht in diesem Datenpunkten die Daten schon drin oder sollen dort die Daten aus den Dropdown-Menü rein?

      Ist der Pfad auf dem NAS gemountet ins Iobroker System??

      N Offline
      N Offline
      Nordischerjung
      schrieb am zuletzt editiert von
      #3

      @tt-tom Moin,

      ja in den DPs steht dann schon zb Kamera Eingang in dem anderen 2023 und in dem anderen 04 drin

      leider geht das Mounten nicht, da iobroker in einem Unprivileged LXC läuft. Habe schon viel versucht, aber scheinbar geht es damit nicht, oder ich zu dusselig ( Was hier sehr naheliegen könnte :-) )

      Gruß Nordischerjung

      sonnige Grüße von der Ostsee

      maximal1981M T 2 Antworten Letzte Antwort
      0
      • N Nordischerjung

        @tt-tom Moin,

        ja in den DPs steht dann schon zb Kamera Eingang in dem anderen 2023 und in dem anderen 04 drin

        leider geht das Mounten nicht, da iobroker in einem Unprivileged LXC läuft. Habe schon viel versucht, aber scheinbar geht es damit nicht, oder ich zu dusselig ( Was hier sehr naheliegen könnte :-) )

        maximal1981M Offline
        maximal1981M Offline
        maximal1981
        schrieb am zuletzt editiert von maximal1981
        #4

        @nordischerjung wenn du nicht zur NAS kommst, kannst auch nichts löschen

        EDIT: am host könntest du es mounten und ein bindmount machen

        N 1 Antwort Letzte Antwort
        0
        • maximal1981M maximal1981

          @nordischerjung wenn du nicht zur NAS kommst, kannst auch nichts löschen

          EDIT: am host könntest du es mounten und ein bindmount machen

          N Offline
          N Offline
          Nordischerjung
          schrieb am zuletzt editiert von
          #5

          @maximal1981 sagte in Script für Ordner löschen auf einem NAS:

          EDIT: am host könntest du es mounten und ein bindmount machen

          wie geht das?

          Gruß Nordischerjung

          sonnige Grüße von der Ostsee

          maximal1981M 1 Antwort Letzte Antwort
          0
          • N Nordischerjung

            @maximal1981 sagte in Script für Ordner löschen auf einem NAS:

            EDIT: am host könntest du es mounten und ein bindmount machen

            wie geht das?

            maximal1981M Offline
            maximal1981M Offline
            maximal1981
            schrieb am zuletzt editiert von
            #6

            @nordischerjung dafür gibt es google und das proxmox Forum

            https://forum.proxmox.com/threads/mount-nfs-share-on-host-and-create-a-mount-point-in-a-unprivileged-container.119603/

            ein wenig kann man sich auch selbst durcharbeiten, wenn man schon die Begrifflichkeiten hat

            1 Antwort Letzte Antwort
            0
            • N Nordischerjung

              @tt-tom Moin,

              ja in den DPs steht dann schon zb Kamera Eingang in dem anderen 2023 und in dem anderen 04 drin

              leider geht das Mounten nicht, da iobroker in einem Unprivileged LXC läuft. Habe schon viel versucht, aber scheinbar geht es damit nicht, oder ich zu dusselig ( Was hier sehr naheliegen könnte :-) )

              T Offline
              T Offline
              TT-Tom
              schrieb am zuletzt editiert von
              #7

              @nordischerjung

              Also dein Button muss in ein Datenpunkt schreiben, diesen nutzt du dann als Trigger. Die anderen Datepunkte nutzt du mit dem Textbaustein „ erstelle Text aus“ und setzt den Pfad zusammen.

              Aber erst musst du das Problem mit dem Zugriff lösen und da kann ich dir leider nicht weiter helfen. Habe keine Container.

              Gruß Tom
              https://github.com/tt-tom17
              Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

              NSPanel Script Wiki
              https://github.com/joBr99/nspanel-lovelace-ui/wiki

              NSPanel Adapter Wiki
              https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

              N 1 Antwort Letzte Antwort
              0
              • T TT-Tom

                @nordischerjung

                Also dein Button muss in ein Datenpunkt schreiben, diesen nutzt du dann als Trigger. Die anderen Datepunkte nutzt du mit dem Textbaustein „ erstelle Text aus“ und setzt den Pfad zusammen.

                Aber erst musst du das Problem mit dem Zugriff lösen und da kann ich dir leider nicht weiter helfen. Habe keine Container.

                N Offline
                N Offline
                Nordischerjung
                schrieb am zuletzt editiert von
                #8

                @tt-tom soweit habe ich es schon

                fa60abeb-ba87-4418-9713-75eef7746c6f-image.png

                nur wie lautet der Löschbefehl, muss ich es dann mit dem exec Baustein machen?

                Ja, das mounten ist natürlich noch das Problem. Ich hatte schon viel in den Foren gesucht und probiert, aber mit Backitup hatte ich es einfach nicht geschafft. Deshalb nutze ich dort immer noch FTP

                Gruß Nordischerjung

                sonnige Grüße von der Ostsee

                T 1 Antwort Letzte Antwort
                0
                • N Offline
                  N Offline
                  Nordischerjung
                  schrieb am zuletzt editiert von Nordischerjung
                  #9

                  Ich habe es jetzt erst einmal per FTP gelöst. Das funktioniert auch schon.

                  f9d355a4-9987-4cbf-8abc-d387780fbc98-image.png

                  const ftp = require('ftp');
                  
                  function deleteFolderOnNAS(folderPath) {
                  
                  console.log (folderPath);
                  
                  
                  const config = {
                    host: '192.168.170.70',
                    port: 21,
                    user: 'xxx',
                    password: 'xxx',
                  };
                  
                  const client = new ftp();
                  
                  client.on('ready', () => {
                  
                  console.log('Verbindung zum NAS per FTP erfolgreich hergestellt.');
                    client.list(folderPath, (err, list) => {
                      if (err) {
                        console.error('Fehler beim Überprüfen des Ordners:', err);
                        client.end();
                        return;
                      }
                  
                      if (list.length === 0) {
                        console.error('Der zu löschende Ordner existiert nicht, oder ist Leer');
                        client.end();
                        return;
                      }
                  
                      client.rmdir(folderPath, true, (err) => {
                        if (err) {
                          console.error('Fehler beim Löschen des Ordners:', err);
                        } else {
                          console.log('Ordner erfolgreich gelöscht.');
                        }
                  
                        client.end();
                      });
                    });
                  });
                  
                  client.on('error', (err) => {
                    console.error('Fehler beim Verbindungsaufbau:', err);
                  });
                  
                  client.connect(config);
                  }
                  
                  const folderPath = '/Videos/' + Kamera + '/' + Jahr + '/' + Monat; // Pfad zum zu löschenden Ordner
                  
                  deleteFolderOnNAS(folderPath);
                  

                  Ich würde jetzt gerne nur die Verbindungsmeldungen

                  Verbindung zum NAS per FTP erfolgreich hergestellt. oder 
                  Fehler beim Verbindungsaufbau 
                  

                  in die Varibale "Verbindung" schreiben

                  Und die anderen 3 (Fehler beim löschen usw) in die Var "Ordnervorh" schreiben.

                  Wie geht das denn?

                  Einfach mit

                  console.log('Verbindung zum NAS per FTP erfolgreich hergestellt.');
                  Verbindung = 'Verbindung zum NAS per FTP erfolgreich hergestellt.' ;
                  

                  hat es nicht funktioniert. Der LOG Eintrag kam aber

                  PS an dem Baustein hatte ich natürlich Variablen dran an Verbindung und Ordnervorh

                  Gruß Nordischerjung

                  sonnige Grüße von der Ostsee

                  T 2 Antworten Letzte Antwort
                  0
                  • N Nordischerjung

                    Ich habe es jetzt erst einmal per FTP gelöst. Das funktioniert auch schon.

                    f9d355a4-9987-4cbf-8abc-d387780fbc98-image.png

                    const ftp = require('ftp');
                    
                    function deleteFolderOnNAS(folderPath) {
                    
                    console.log (folderPath);
                    
                    
                    const config = {
                      host: '192.168.170.70',
                      port: 21,
                      user: 'xxx',
                      password: 'xxx',
                    };
                    
                    const client = new ftp();
                    
                    client.on('ready', () => {
                    
                    console.log('Verbindung zum NAS per FTP erfolgreich hergestellt.');
                      client.list(folderPath, (err, list) => {
                        if (err) {
                          console.error('Fehler beim Überprüfen des Ordners:', err);
                          client.end();
                          return;
                        }
                    
                        if (list.length === 0) {
                          console.error('Der zu löschende Ordner existiert nicht, oder ist Leer');
                          client.end();
                          return;
                        }
                    
                        client.rmdir(folderPath, true, (err) => {
                          if (err) {
                            console.error('Fehler beim Löschen des Ordners:', err);
                          } else {
                            console.log('Ordner erfolgreich gelöscht.');
                          }
                    
                          client.end();
                        });
                      });
                    });
                    
                    client.on('error', (err) => {
                      console.error('Fehler beim Verbindungsaufbau:', err);
                    });
                    
                    client.connect(config);
                    }
                    
                    const folderPath = '/Videos/' + Kamera + '/' + Jahr + '/' + Monat; // Pfad zum zu löschenden Ordner
                    
                    deleteFolderOnNAS(folderPath);
                    

                    Ich würde jetzt gerne nur die Verbindungsmeldungen

                    Verbindung zum NAS per FTP erfolgreich hergestellt. oder 
                    Fehler beim Verbindungsaufbau 
                    

                    in die Varibale "Verbindung" schreiben

                    Und die anderen 3 (Fehler beim löschen usw) in die Var "Ordnervorh" schreiben.

                    Wie geht das denn?

                    Einfach mit

                    console.log('Verbindung zum NAS per FTP erfolgreich hergestellt.');
                    Verbindung = 'Verbindung zum NAS per FTP erfolgreich hergestellt.' ;
                    

                    hat es nicht funktioniert. Der LOG Eintrag kam aber

                    PS an dem Baustein hatte ich natürlich Variablen dran an Verbindung und Ordnervorh

                    T Offline
                    T Offline
                    TT-Tom
                    schrieb am zuletzt editiert von
                    #10

                    @nordischerjung

                    Schau es mir heute Abend an, am Handy ist doof.

                    Gruß Tom
                    https://github.com/tt-tom17
                    Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                    NSPanel Script Wiki
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    NSPanel Adapter Wiki
                    https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                    1 Antwort Letzte Antwort
                    0
                    • N Nordischerjung

                      @tt-tom soweit habe ich es schon

                      fa60abeb-ba87-4418-9713-75eef7746c6f-image.png

                      nur wie lautet der Löschbefehl, muss ich es dann mit dem exec Baustein machen?

                      Ja, das mounten ist natürlich noch das Problem. Ich hatte schon viel in den Foren gesucht und probiert, aber mit Backitup hatte ich es einfach nicht geschafft. Deshalb nutze ich dort immer noch FTP

                      T Offline
                      T Offline
                      TT-Tom
                      schrieb am zuletzt editiert von
                      #11

                      @nordischerjung

                      zum Ausführen benötigst du den exec Baustein.

                      hier Info zum EXEC Baustein

                      hier info zum Löschen unter Linux, damit muss aber dein Verzeichnis unter ioBroker gemountet sein

                      Gruß Tom
                      https://github.com/tt-tom17
                      Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                      NSPanel Script Wiki
                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                      NSPanel Adapter Wiki
                      https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                      1 Antwort Letzte Antwort
                      0
                      • N Nordischerjung

                        Ich habe es jetzt erst einmal per FTP gelöst. Das funktioniert auch schon.

                        f9d355a4-9987-4cbf-8abc-d387780fbc98-image.png

                        const ftp = require('ftp');
                        
                        function deleteFolderOnNAS(folderPath) {
                        
                        console.log (folderPath);
                        
                        
                        const config = {
                          host: '192.168.170.70',
                          port: 21,
                          user: 'xxx',
                          password: 'xxx',
                        };
                        
                        const client = new ftp();
                        
                        client.on('ready', () => {
                        
                        console.log('Verbindung zum NAS per FTP erfolgreich hergestellt.');
                          client.list(folderPath, (err, list) => {
                            if (err) {
                              console.error('Fehler beim Überprüfen des Ordners:', err);
                              client.end();
                              return;
                            }
                        
                            if (list.length === 0) {
                              console.error('Der zu löschende Ordner existiert nicht, oder ist Leer');
                              client.end();
                              return;
                            }
                        
                            client.rmdir(folderPath, true, (err) => {
                              if (err) {
                                console.error('Fehler beim Löschen des Ordners:', err);
                              } else {
                                console.log('Ordner erfolgreich gelöscht.');
                              }
                        
                              client.end();
                            });
                          });
                        });
                        
                        client.on('error', (err) => {
                          console.error('Fehler beim Verbindungsaufbau:', err);
                        });
                        
                        client.connect(config);
                        }
                        
                        const folderPath = '/Videos/' + Kamera + '/' + Jahr + '/' + Monat; // Pfad zum zu löschenden Ordner
                        
                        deleteFolderOnNAS(folderPath);
                        

                        Ich würde jetzt gerne nur die Verbindungsmeldungen

                        Verbindung zum NAS per FTP erfolgreich hergestellt. oder 
                        Fehler beim Verbindungsaufbau 
                        

                        in die Varibale "Verbindung" schreiben

                        Und die anderen 3 (Fehler beim löschen usw) in die Var "Ordnervorh" schreiben.

                        Wie geht das denn?

                        Einfach mit

                        console.log('Verbindung zum NAS per FTP erfolgreich hergestellt.');
                        Verbindung = 'Verbindung zum NAS per FTP erfolgreich hergestellt.' ;
                        

                        hat es nicht funktioniert. Der LOG Eintrag kam aber

                        PS an dem Baustein hatte ich natürlich Variablen dran an Verbindung und Ordnervorh

                        T Offline
                        T Offline
                        TT-Tom
                        schrieb am zuletzt editiert von TT-Tom
                        #12

                        @nordischerjung sagte in Script für Ordner löschen auf einem NAS:

                        in die Varibale "Verbindung" schreiben
                        Und die anderen 3 (Fehler beim löschen usw) in die Var "Ordnervorh" schreiben.
                        Wie geht das denn?

                        möchtest du diese als Rückmeldung haben oder übergeben?

                        hier Findest du noch mal infos zu den Funktion

                        Gruß Tom
                        https://github.com/tt-tom17
                        Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                        NSPanel Script Wiki
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                        NSPanel Adapter Wiki
                        https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                        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

                        847

                        Online

                        32.4k

                        Benutzer

                        81.5k

                        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