Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Script für Ordner löschen auf einem NAS

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Script für Ordner löschen auf einem NAS

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      TT-Tom @Nordischerjung last edited by

      @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 1 Reply Last reply Reply Quote 0
      • N
        Nordischerjung @TT-Tom last edited by

        @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 🙂 )

        maximal1981 T 2 Replies Last reply Reply Quote 0
        • maximal1981
          maximal1981 @Nordischerjung last edited by 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 1 Reply Last reply Reply Quote 0
          • N
            Nordischerjung @maximal1981 last edited by

            @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?

            maximal1981 1 Reply Last reply Reply Quote 0
            • maximal1981
              maximal1981 @Nordischerjung last edited by

              @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 Reply Last reply Reply Quote 0
              • T
                TT-Tom @Nordischerjung last edited by

                @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 1 Reply Last reply Reply Quote 0
                • N
                  Nordischerjung @TT-Tom last edited by

                  @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 1 Reply Last reply Reply Quote 0
                  • N
                    Nordischerjung last edited by 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 2 Replies Last reply Reply Quote 0
                    • T
                      TT-Tom @Nordischerjung last edited by

                      @nordischerjung

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

                      1 Reply Last reply Reply Quote 0
                      • T
                        TT-Tom @Nordischerjung last edited by

                        @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

                        1 Reply Last reply Reply Quote 0
                        • T
                          TT-Tom @Nordischerjung last edited by TT-Tom

                          @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

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          926
                          Online

                          31.7k
                          Users

                          79.8k
                          Topics

                          1.3m
                          Posts

                          blockly javascript
                          3
                          12
                          453
                          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