Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Codeschnipsel - Datei löschen auf Synology

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Codeschnipsel - Datei löschen auf Synology

    This topic has been deleted. Only users with topic management privileges can see it.
    • bahnuhr
      bahnuhr Forum Testing Most Active @falke69 last edited by

      @falke69

      Und wie machst du das ganze per Script?

      falke69 1 Reply Last reply Reply Quote 0
      • falke69
        falke69 @bahnuhr last edited by

        @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
        
        
        bahnuhr 1 Reply Last reply Reply Quote 0
        • bahnuhr
          bahnuhr Forum Testing Most Active @falke69 last edited by

          @falke69

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

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

          falke69 liv-in-sky 2 Replies Last reply Reply Quote 0
          • falke69
            falke69 @bahnuhr last edited by

            @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 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @bahnuhr last edited by

              @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

              bahnuhr 1 Reply Last reply Reply Quote 0
              • bahnuhr
                bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                @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-sky 1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @bahnuhr last edited by

                  @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()
                  }
                  
                  

                  bahnuhr 2 Replies Last reply Reply Quote 1
                  • bahnuhr
                    bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                    @liv-in-sky

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

                    1 Reply Last reply Reply Quote 0
                    • bahnuhr
                      bahnuhr Forum Testing Most Active @liv-in-sky last edited by

                      @liv-in-sky

                      Rückinfo von mir.

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

                      Danke dir.

                      mfg
                      Dieter

                      1 Reply Last reply Reply Quote 0
                      • bahnuhr
                        bahnuhr Forum Testing Most Active last edited by

                        @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-sky 1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @bahnuhr last edited by

                          @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'
                          
                          1 Reply Last reply Reply Quote 1
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          813
                          Online

                          31.8k
                          Users

                          80.0k
                          Topics

                          1.3m
                          Posts

                          javascript
                          3
                          13
                          417
                          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