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

                          553

                          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