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

    @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

                      686

                      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