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. Codeschnipsel - Datei löschen auf Synology

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Codeschnipsel - Datei löschen auf Synology

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
13 Beiträge 3 Kommentatoren 459 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.
  • bahnuhrB Online
    bahnuhrB Online
    bahnuhr
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #1

    Guten Morgen,

    habt ihr mal einen Codeschnipsel für mich um eine Datei auf der Synology zu löschen.

    Probiert habe ich schon:

    unlink('ftp://dieter:abcde@192.168.xxx.x/Sicherung/', '123.txt',(e)=>{
        if(e) log(e)
    })
    

    oder auch:

        var fs = require('fs'); 
        fs.unlink('//SYNOLOGY/Sicherung/123.txt', function (err) {
            if (err) throw err;
            log('Datei wurde gelöscht.');
        });
    

    Und davon auch die verschiedensten Optionen.

    Fazit:
    Die Datei wird nicht gelöscht.
    Im Log kommt z.B.:

    Error: ENOENT: no such file or directory, unlink '//SYNOLOGY/Sicherung/123.txt'
    

    Danke im Voraus.

    mfg
    Dieter


    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
    Danke.
    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
    ScreenToGif :https://www.screentogif.com/downloads.html

    falke69F 1 Antwort Letzte Antwort
    0
    • bahnuhrB bahnuhr

      Guten Morgen,

      habt ihr mal einen Codeschnipsel für mich um eine Datei auf der Synology zu löschen.

      Probiert habe ich schon:

      unlink('ftp://dieter:abcde@192.168.xxx.x/Sicherung/', '123.txt',(e)=>{
          if(e) log(e)
      })
      

      oder auch:

          var fs = require('fs'); 
          fs.unlink('//SYNOLOGY/Sicherung/123.txt', function (err) {
              if (err) throw err;
              log('Datei wurde gelöscht.');
          });
      

      Und davon auch die verschiedensten Optionen.

      Fazit:
      Die Datei wird nicht gelöscht.
      Im Log kommt z.B.:

      Error: ENOENT: no such file or directory, unlink '//SYNOLOGY/Sicherung/123.txt'
      

      Danke im Voraus.

      mfg
      Dieter

      falke69F Offline
      falke69F Offline
      falke69
      schrieb am zuletzt editiert von
      #2

      @bahnuhr

      schau mal hier. Vielleicht hilft das ja weiter.

      Wenn es sich um Dateien älter als xx Tage handelt
      nuzte ich um alte Aufnahmen meiner Cam zu löschen folgenden Befehl.
      Die 19 steht für das alter der Tage.

      find /Verzeichnis/* -mtime +19 -type d -exec rm -rf {} \;
      
      bahnuhrB 1 Antwort Letzte Antwort
      0
      • falke69F falke69

        @bahnuhr

        schau mal hier. Vielleicht hilft das ja weiter.

        Wenn es sich um Dateien älter als xx Tage handelt
        nuzte ich um alte Aufnahmen meiner Cam zu löschen folgenden Befehl.
        Die 19 steht für das alter der Tage.

        find /Verzeichnis/* -mtime +19 -type d -exec rm -rf {} \;
        
        bahnuhrB Online
        bahnuhrB Online
        bahnuhr
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #3

        @falke69

        Und wie machst du das ganze per Script?


        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
        Danke.
        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
        ScreenToGif :https://www.screentogif.com/downloads.html

        falke69F 1 Antwort Letzte Antwort
        0
        • bahnuhrB bahnuhr

          @falke69

          Und wie machst du das ganze per Script?

          falke69F Offline
          falke69F Offline
          falke69
          schrieb am zuletzt editiert von
          #4

          @bahnuhr

          mit Shell Script

          #!/usr/bin/expect -f
          mount -t cifs -o username=Benutzername,password=geheim //192.168.xxx.xxx/Cam /mnt/cam
          find /mnt/cam/* -mtime +19 -type d -exec rm -rf {} \;
          sleep 10s
          umount /mnt/cam
          
          
          bahnuhrB 1 Antwort Letzte Antwort
          0
          • falke69F falke69

            @bahnuhr

            mit Shell Script

            #!/usr/bin/expect -f
            mount -t cifs -o username=Benutzername,password=geheim //192.168.xxx.xxx/Cam /mnt/cam
            find /mnt/cam/* -mtime +19 -type d -exec rm -rf {} \;
            sleep 10s
            umount /mnt/cam
            
            
            bahnuhrB Online
            bahnuhrB Online
            bahnuhr
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #5

            @falke69

            Das wäre evtl. auch ne Lösung.

            Ich suche aber ein Script was ich per iob ändern und ausführen kann.


            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
            Danke.
            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
            ScreenToGif :https://www.screentogif.com/downloads.html

            falke69F liv-in-skyL 2 Antworten Letzte Antwort
            0
            • bahnuhrB bahnuhr

              @falke69

              Das wäre evtl. auch ne Lösung.

              Ich suche aber ein Script was ich per iob ändern und ausführen kann.

              falke69F Offline
              falke69F Offline
              falke69
              schrieb am zuletzt editiert von
              #6

              @bahnuhr

              Ich hatte am Anfang das mit dem exec Befehl über Blockly gemacht.
              Dann hatte ich ein Script gefunden, wo ich mich auf den Rechner einloggen kann und das Shell Script ausführen kann. In meinem Fall liegt das Script mit auf meinem IO-Broker und wird einmal täglich automatisch gestartet.

              1 Antwort Letzte Antwort
              0
              • bahnuhrB bahnuhr

                @falke69

                Das wäre evtl. auch ne Lösung.

                Ich suche aber ein Script was ich per iob ändern und ausführen kann.

                liv-in-skyL Offline
                liv-in-skyL Offline
                liv-in-sky
                schrieb am zuletzt editiert von
                #7

                @bahnuhr

                wie ist den das directory eingebunden ? ist es gemountet ? oder willst du über ftp darauf zugreifen ?
                so wie es aussieht, ist da noch dein herz bei windows :-)

                das ist über einen mount: da braucht man kein "//" - ist ja linux :-) sondern nur eines "/SYNOLOGY/Sicherung/123.txt" - aber es muss gemountet sein - ich nehme an, dass "//SYNOLOGY/Sicherung/123.txt" ein windows rechner ist, der in deinem netzwerk zu sehen ist

                
                
                    var fs = require('fs'); 
                
                    fs.unlink('//SYNOLOGY/Sicherung/123.txt', function (err) {
                
                        if (err) throw err;
                
                        log('Datei wurde gelöscht.');
                
                    });
                
                

                damit du über fs. zugreifen kannst, musst du zuerst sowas ausführen - evtl über exec() und anschliessend einen umount

                mount -t cifs -o username=Benutzername,password=geheim //192.168.xxx.xxx/Cam /mnt/cam
                

                willst du über ftp löschen, muss du wohl sowas machen https://www.npmjs.com/package/basic-ftp?activeTab=readme

                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                bahnuhrB 1 Antwort Letzte Antwort
                0
                • liv-in-skyL liv-in-sky

                  @bahnuhr

                  wie ist den das directory eingebunden ? ist es gemountet ? oder willst du über ftp darauf zugreifen ?
                  so wie es aussieht, ist da noch dein herz bei windows :-)

                  das ist über einen mount: da braucht man kein "//" - ist ja linux :-) sondern nur eines "/SYNOLOGY/Sicherung/123.txt" - aber es muss gemountet sein - ich nehme an, dass "//SYNOLOGY/Sicherung/123.txt" ein windows rechner ist, der in deinem netzwerk zu sehen ist

                  
                  
                      var fs = require('fs'); 
                  
                      fs.unlink('//SYNOLOGY/Sicherung/123.txt', function (err) {
                  
                          if (err) throw err;
                  
                          log('Datei wurde gelöscht.');
                  
                      });
                  
                  

                  damit du über fs. zugreifen kannst, musst du zuerst sowas ausführen - evtl über exec() und anschliessend einen umount

                  mount -t cifs -o username=Benutzername,password=geheim //192.168.xxx.xxx/Cam /mnt/cam
                  

                  willst du über ftp löschen, muss du wohl sowas machen https://www.npmjs.com/package/basic-ftp?activeTab=readme

                  bahnuhrB Online
                  bahnuhrB Online
                  bahnuhr
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #8

                  @liv-in-sky

                  Installation:
                  iob läuft in vm in proxmox auf einem extra nuc rechner
                  Daneben habe ich eine synology mit laufwerke..
                  Auf diese greif ich zu.

                  Und nun möchte ich Dateien/Verzeichnisse auf den FP der Synology löschen.
                  Und das ganze per script.

                  ftp soll mir recht sein.
                  Hatte ich ja oben auch probiert.


                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                  Danke.
                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                  ScreenToGif :https://www.screentogif.com/downloads.html

                  liv-in-skyL 1 Antwort Letzte Antwort
                  0
                  • bahnuhrB bahnuhr

                    @liv-in-sky

                    Installation:
                    iob läuft in vm in proxmox auf einem extra nuc rechner
                    Daneben habe ich eine synology mit laufwerke..
                    Auf diese greif ich zu.

                    Und nun möchte ich Dateien/Verzeichnisse auf den FP der Synology löschen.
                    Und das ganze per script.

                    ftp soll mir recht sein.
                    Hatte ich ja oben auch probiert.

                    liv-in-skyL Offline
                    liv-in-skyL Offline
                    liv-in-sky
                    schrieb am zuletzt editiert von
                    #9

                    @bahnuhr

                    habe mit fritzbox getestet

                    du musst das im setting (als zusatznode) des javascriptadapters hinzufügen: basic-ftp
                    das directory muss natürlich über ftp erreichbar sein (auf synology)

                    Image 2.png

                    im bild siehst du winscp - unten - mit dem file

                    AApossis (122).gif

                    das script

                    
                    const ftp = require("basic-ftp")
                    
                    example()
                    
                    async function example() {
                       const client = new ftp.Client()
                       client.ftp.verbose = true
                       try {
                           await client.access({
                               host: "192.168.178.1",
                               user: "username",
                               password: "password",
                               secure: false
                           })
                           await client.cd('test')
                           console.log(await client.list())
                           
                           await client.remove('filmstatus.txt')
                           console.log(await client.list())
                       }
                       catch(err) {
                           console.log(err)
                       }
                       client.close()
                    }
                    
                    

                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                    bahnuhrB 2 Antworten Letzte Antwort
                    1
                    • liv-in-skyL liv-in-sky

                      @bahnuhr

                      habe mit fritzbox getestet

                      du musst das im setting (als zusatznode) des javascriptadapters hinzufügen: basic-ftp
                      das directory muss natürlich über ftp erreichbar sein (auf synology)

                      Image 2.png

                      im bild siehst du winscp - unten - mit dem file

                      AApossis (122).gif

                      das script

                      
                      const ftp = require("basic-ftp")
                      
                      example()
                      
                      async function example() {
                         const client = new ftp.Client()
                         client.ftp.verbose = true
                         try {
                             await client.access({
                                 host: "192.168.178.1",
                                 user: "username",
                                 password: "password",
                                 secure: false
                             })
                             await client.cd('test')
                             console.log(await client.list())
                             
                             await client.remove('filmstatus.txt')
                             console.log(await client.list())
                         }
                         catch(err) {
                             console.log(err)
                         }
                         client.close()
                      }
                      
                      

                      bahnuhrB Online
                      bahnuhrB Online
                      bahnuhr
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #10

                      @liv-in-sky

                      Danke für deine Hilfe.
                      Ich probier das nachher noch aus.
                      Melde mich dann.


                      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                      Danke.
                      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                      ScreenToGif :https://www.screentogif.com/downloads.html

                      1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @bahnuhr

                        habe mit fritzbox getestet

                        du musst das im setting (als zusatznode) des javascriptadapters hinzufügen: basic-ftp
                        das directory muss natürlich über ftp erreichbar sein (auf synology)

                        Image 2.png

                        im bild siehst du winscp - unten - mit dem file

                        AApossis (122).gif

                        das script

                        
                        const ftp = require("basic-ftp")
                        
                        example()
                        
                        async function example() {
                           const client = new ftp.Client()
                           client.ftp.verbose = true
                           try {
                               await client.access({
                                   host: "192.168.178.1",
                                   user: "username",
                                   password: "password",
                                   secure: false
                               })
                               await client.cd('test')
                               console.log(await client.list())
                               
                               await client.remove('filmstatus.txt')
                               console.log(await client.list())
                           }
                           catch(err) {
                               console.log(err)
                           }
                           client.close()
                        }
                        
                        

                        bahnuhrB Online
                        bahnuhrB Online
                        bahnuhr
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #11

                        @liv-in-sky

                        Rückinfo von mir.

                        1. Testversuch hat geklappt.
                          Muss man schauen, was man damit alles machen kann.

                        Danke dir.

                        mfg
                        Dieter


                        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                        Danke.
                        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                        ScreenToGif :https://www.screentogif.com/downloads.html

                        1 Antwort Letzte Antwort
                        0
                        • bahnuhrB Online
                          bahnuhrB Online
                          bahnuhr
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von
                          #12

                          @alle

                          Müsste dies nicht auch mit einem einfachen "exec" Befehl funktionieren.

                          Zum kopieren benutze ich z.B.

                          var Server = "ftp://dieter:xxx@192.168.xxx.x/Sicherung/Sicherung' 'ioBroker/Scripte/" + Jahr + "_" + Monat + "_" + Tag + "/";
                          exec('wput -q --basename=/opt/iobroker/Scripte/ /opt/iobroker/Scripte/global ' + Server, function (error, result, stderr) { if (error) { console.log(error + " " + result); } });
                          

                          Müsste dies nicht auch mit einem "del" oder "rm" funktionieren ?
                          Also Dateien löschen per exec.
                          Geht sowas ?


                          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                          Danke.
                          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                          ScreenToGif :https://www.screentogif.com/downloads.html

                          liv-in-skyL 1 Antwort Letzte Antwort
                          0
                          • bahnuhrB bahnuhr

                            @alle

                            Müsste dies nicht auch mit einem einfachen "exec" Befehl funktionieren.

                            Zum kopieren benutze ich z.B.

                            var Server = "ftp://dieter:xxx@192.168.xxx.x/Sicherung/Sicherung' 'ioBroker/Scripte/" + Jahr + "_" + Monat + "_" + Tag + "/";
                            exec('wput -q --basename=/opt/iobroker/Scripte/ /opt/iobroker/Scripte/global ' + Server, function (error, result, stderr) { if (error) { console.log(error + " " + result); } });
                            

                            Müsste dies nicht auch mit einem "del" oder "rm" funktionieren ?
                            Also Dateien löschen per exec.
                            Geht sowas ?

                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #13

                            @bahnuhr

                            bei mir funktioniert das auf der console:

                            curl -v -u user:passwort  ftp://192.168.178.1/test/filmstatus.txt -Q '-DELE filmstatus.txt'
                            

                            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

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


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            562

                            Online

                            32.7k

                            Benutzer

                            82.4k

                            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