kokogakayui Par contre un truc qui pourrait être cool, c'est de pouvoir spécifier un nom de fichier, genre unseeded.txt, dans lequel on retrouverait l'output de ton script plutôt que directement dans le shell. Parce que dans mon cas, y'avait tellement de unnecessary files que je dépasse la limite d'affichage de mon shell, et je peux pas remonter jusqu'au début.

Alors je comprend la partie ou tu as trop d'affichage, par contre j'ai pas compris ce que tu veux dire par : "spécifier un nom de fichier, genre unseeded.txt, dans lequel on retrouverait l'output de ton script plutôt que directement dans le shell"

kokogakayui Un autre truc qui pourrait être cool, qui s'applique uniquement aux boxs multi-users, ce serait une fonction qui permette de comparer mon dossier torrents avec celui de l'autre user de ma box. On a pas mal de goûts musicaux en commun, et du coup on a pas mal de doublons sur la box. Un truc qui supprime les fichiers de l'user2, et qui créée des symlinks ou hardlinks vers ceux de l'user principal ça pourrait être très cool. J'avais essayé de faire ça moi même à une époque, mais je maitrise pas assez et ça n'a jamais donné quelque chose de fonctionnel.

Ouais, y a pas besoin vraiment de se connecter à rtorrent pour faire ça.
Je pense que cette fonction sera utilisé pas vraiment très très peu de personne.
Sauf si la demande est forte je me vois pas coder ça.

kokogakayui EDIT : A la limite un truc qui pourrait être bien aussi, c'est une fonction qui permettre de déplacer tous les unnecessary dans un dossier donné, histoire de tous les centraliser et de les virer des dossiers de seed, sans pour autant les supprimer 🙂

Ah ça je valide, j'aime bien l'idée 😅
je vois bien une commande du genre :

rtorrent-cleaner mv --folder=/path/to/folder

    Magicalex
    Alors pour mon histoire d'affichage d'output, j'avoue c'était pas clair, mais l'idée est très simple. Juste un truc genre

    rtorrent-cleaner report --url-xmlrpc=http://localhost:8888/RPC --home=/home/koko/torrents --file=/home/koko/unseeded.txt -v

    qui permettrait de mettre tout le résultat du script (la liste des unecessary et des missing files) dans le fichier unseeded.txt.

    Pour ton rtorrent-cleaner mv --folder=/path/to/folder ouais je valide à fond!

    Et pour mon truc de comparaison de dossiers de plusieurs users, c'est sûr que c'est assez spécifique, mais comme ça reste dans l'idée de nettoyage et optimisation de la place sur la box je me disais que c'était cohérent héhé 🙂

    J'ai testé, la fonction rm fonctionne bien.

    Par contre dans le cas d'une série il faut supprimer chaque épisode et une fois fait le dossier existe toujours dans le système

    avant suppression : 
    /home/user/torrents/serie/episode
    Après suppression : 
    /home/user/torrents/serie/
    

    Du coup au lieu de supprimer chaque fichier d'un sous dossier, ne peut on pas supprimer le dossier ?

      Banip le script ne supprime que les fichiers en trop par rapport à rtorrent. Et il ne supprime que les dossiers vide. Si le dossier episode dans ton exemple n'est pas supp c'est qu'il reste des fichiers dedans.

      @Magicalex Je jure solennellement que le script ne supprime pas un dossier vide 🙁 peut être les espaces dans le nom de dossier ?

      root@server:/home/user/torrents# rtorrent-cleaner rm --url-xmlrpc=http://localhost:8888/RPC --home=/home/user/torrents -v
      ============================
      = REMOVE UNNECESSARY FILES =
      ============================
      
       -> Retrieving the list of concerned files.
      
       100/100 [============================] 100% 2 secs Completed!
      
      Are you sure you want to delete the /home/user/torrents/Space Colony Steam Edition - PLAZA/plaza.nfo file? [y|n] y
       -> file: /home/user/torrents/Space Colony Steam Edition - PLAZA/plaza.nfo has been removed
      Are you sure you want to delete the /home/user/torrents/Space Colony [...]laza-space.colony.steam.edition.iso file? [y|n] y
       -> file: /home/user/torrents/Space Colony [...]laza-space.colony.steam.edition.iso has been removed
      Are you sure you want to delete the /home/user/torrents/The.Elder.Scr[...]crolls.V.Skyrim.FRENCH-PiSTOLET.iso file? [y|n] ^C
      
      root@server:/home/user/torrents# ls Space\ Colony\ Steam\ Edition\ -\ PLAZA/ -la
      total 8
      drwxr-xr-x  2 mylene mylene 4096 Nov 28 14:41 .
      drwxr-xr-x 18 mylene mylene 4096 Nov 28 14:41 ..
      

        kris06800 tu peux essayer en php5 pour voir.

        Tu utilises quel version de php5? php -v

        Banip^C tu as arrêtés le script avant la fin avec ctrl+c
        Il faut que tu répondes à toutes les questions, tu peux faire entrer, entrer.. par défaut le script ne supprime pas le fichier.

          @Magicalex

          root@krisboxx:~# php -v
          PHP 5.6.38-1~dotdeb+7.1 (cli) (built: Sep 14 2018 10:54:46)
          Copyright (c) 1997-2016 The PHP Group
          Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
          with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

          du coup tu penses faire aussi pour php 5 ?
          ensuite c'est un serveur avec plusieurs utilisateurs sa le fait pour tous les utilisateurs ou sa demande pour chaque utilisateurs ?

            kris06800 non faut faire utilisateur par utilisateur.

            Tente le coup en php 5.6, si tu as une erreur je vais voir ce que je peux faire.

            @Magicalex voila le message d'ereur que j'obtiens dès le début :

            root@krisboxx:~# mkdir /root/.composer && composer install -d /root/.composer
            mkdir: cannot create directory `/root/.composer': File exists
            root@krisboxx:~# composer install -d /root/.composer
            Do not run Composer as root/super user! See https://getcomposer.org/root for details
            Composer could not find a composer.json file in /root/.composer
            To initialize a project, please create a composer.json file as described in the https://getcomposer.org/ "Getting Started" section
            root@krisboxx:~#

              kris06800 c'est bizarre ça.

              tu peux essayer ça?

              rm -Rf /root/.composer
              mkdir /root/.composer && composer install -d /root/.composer
              echo 'export PATH="$PATH:/root/.composer/vendor/bin"' >> /root/.bashrc
              source /root/.bashrc

              ensuite continue le tuto

              5 jours plus tard

              @Magicalex Tiens j'ai aussi une petite question par rapport à ton script. Je me suis rendu compte qu'une grand partie de mes unecessary files, c'était des fichiers sous-titre que plex me rajoute dans mes dossiers... Du coup les fichiers que je voudrais vraiment virer sont noyés dans la masse...Est-ce que tu vois un moyen simple qui permettrait d'ignorer certain types de fichiers, dans mon cas des .srt et .sub ?

                kokogakayui J'ai ajouter ce que tu m'as demandé, une commande pour déplacer les fichiers et une option pour exclure certains fichiers

                J'ai testé ça fonctionne
                En gros l'option s'utilise comme ça --exclude=*.sub,*.str

                Pour mettre à jour :

                composer global remove magicalex/rtorrent-cleaner
                composer global require magicalex/rtorrent-cleaner

                Pour déplacer tous les fichiers en trop (il faut pas oublier de rajouter à chaque fois les option --url-xmlrpc et --home)

                rtorrent-cleaner mv /path/to/your/folder

                Il manque l'option pour demander des logs, je fais ça bientôt

                Salut,

                J'ai sortie une nouvelle version, la 0.2.1 qui supporte désormais php 5.6
                La seul limitation c'est pour l'option --exclude=*.sub on peut utiliser que un seul pattern. Vous ne pouvez pas en indiquer plusieurs en les séparent par une virgule.

                Pour mettre à jour

                composer global update

                Salut, il est très efficace, merci 🙂
                Y'a juste une petite coquille dans le how to concernant mv & rm

                Available commands:
                  help    Displays help for a command
                  list    Lists commands
                  mv      delete unnecessary files
                  report  create a report on unnecessary files
                  rm      delete unnecessary files
                

                  Aerya Oui effectivement, j'ai corrigé ça hier commit
                  ça sera pour la prochaine version.

                  Donnez-moi vos suggestions je vais rajouter la possibilité de log dans un fichier.

                  Merci.

                  Suggestions :

                  • Notification Email/Push en fin de cycle
                  • Cron (je pense surtout au Docker)
                  • Report en page HTML (ou PHP, j'suis pas raciste)

                    Aerya Cron (je pense surtout au Docker)

                    Pour le cron il vous suffit de rajouter une tâche cron dans votre crontab.
                    Y a des options qui le permettent, comme --assume-yes et --quiet qui vous seront utiles.

                    Aerya Report en page HTML (ou PHP, j'suis pas raciste)

                    Une interface web en gros?

                    Aerya Notification Email/Push en fin de cycle

                    Je vais voir comment je peux intégrer ça.

                    Sinon ça fonctionne bien chez vous? Vous avez pas d'erreur dans le listing des fichiers?