Script d'effacement du contenu d'un répertoire
Script d'effacement du contenu d'un répertoire
Bonjour à tous,
Je cherche à mettre en place un automatisme qui effacerait le contenu d'un répertoire dès que celui-ci dépasse une certaine capacité.
Est-ce que ceci doit passer par un script ? J'ai tenté par scénario mais je n'ai pas trouvé comment gérer cette notion, si même c'est possible.
Je ne connais rien en script et n'ai aucun talent de développeur. Si une solution existe, je suis preneur !
Merci
PS: le contexte fonctionnel est le suivant: j'utilise le plugin Motion et une webcam USB pour afficher dans mon design la surveillance vidéo en streaming d'une pièce. Le flux est enregistré en tant que fichier mpeg dans html/tmp/motion/un_répertoire_propre_à_Motion.
Je souhaite pouvoir y accéder si nécessaire mais je n'ai pas besoin de cumuler des jours et des jours de capture. D'autant que la taille du fichier augmente vite, ce qui m'a valu récemment un blocage complet de ma Smart par manque d'espace disque. Je voudrais donc que, en arrivant à environ 100Mo de données par exemple, l'automatisme se déclenche.
Je cherche à mettre en place un automatisme qui effacerait le contenu d'un répertoire dès que celui-ci dépasse une certaine capacité.
Est-ce que ceci doit passer par un script ? J'ai tenté par scénario mais je n'ai pas trouvé comment gérer cette notion, si même c'est possible.
Je ne connais rien en script et n'ai aucun talent de développeur. Si une solution existe, je suis preneur !
Merci
PS: le contexte fonctionnel est le suivant: j'utilise le plugin Motion et une webcam USB pour afficher dans mon design la surveillance vidéo en streaming d'une pièce. Le flux est enregistré en tant que fichier mpeg dans html/tmp/motion/un_répertoire_propre_à_Motion.
Je souhaite pouvoir y accéder si nécessaire mais je n'ai pas besoin de cumuler des jours et des jours de capture. D'autant que la taille du fichier augmente vite, ce qui m'a valu récemment un blocage complet de ma Smart par manque d'espace disque. Je voudrais donc que, en arrivant à environ 100Mo de données par exemple, l'automatisme se déclenche.
Re: Script d'effacement du contenu d'un répertoire
Pas de développeur pour me proposer une solution ?!!
Re: Script d'effacement du contenu d'un répertoire
Hello,
Avec le plugin script + des commandes Linux adaptées pour faire le ménage (que l’on trouve facilement sur Google).
Ou la mise en place d’un cron directement sur le système qui appelle un script.
Avec le plugin script + des commandes Linux adaptées pour faire le ménage (que l’on trouve facilement sur Google).
Ou la mise en place d’un cron directement sur le système qui appelle un script.
Re: Script d'effacement du contenu d'un répertoire
Merci Kyoshi, mais comme je le précisais "Je ne connais rien en script et n'ai aucun talent de développeur".
Re: Script d'effacement du contenu d'un répertoire
Mais cela n'a rien à voir avec le développement.
Ce sont juste des commandes à passer.
Et les tutos ne manquent pas. Il suffit par exemple de saisir dans Google "linux suppression de fichiers par date".
Ce sont juste des commandes à passer.
Et les tutos ne manquent pas. Il suffit par exemple de saisir dans Google "linux suppression de fichiers par date".
-
- Timide
- Messages : 88
- Inscription : 06 mai 2019, 15:17
Re: Script d'effacement du contenu d'un répertoire
tu peux faire un script en bash en suivant un tuto sur le net, du genre
if taille > à capacité
then supprimer le contenu du répertoire /mon_rep/
ça va te faire une heure de recherche et compréhension, mais rien d'hyper compliqué
ensuite tu appelles ce script soit par un scénario, soit comme indiqué plus haut par une tâche cron.
if taille > à capacité
then supprimer le contenu du répertoire /mon_rep/
ça va te faire une heure de recherche et compréhension, mais rien d'hyper compliqué
ensuite tu appelles ce script soit par un scénario, soit comme indiqué plus haut par une tâche cron.
Re: Script d'effacement du contenu d'un répertoire
Bon en fait vous m'aidez sans m'aider.
J'ai bien en tête le principe, ce qui me manque c'est la façon de le mettre en œuvre dans Jeedom.
Je pensais utiliser la ligne de commande suivante:
("232" est le nom du répertoire où se placent mes vidéos)
Maintenant j'en fais quoi ?
Ce code est inspiré de choses que j'ai lues sur:
https://www.nas-forum.com/forum/topic/4 ... e-x-jours/
Mais un NAS Synology a un planificateur de tâches qu'un Jeedom n'a pas (à part un CRON dans un scénario mais ça je sais faire)...
J'ai bien en tête le principe, ce qui me manque c'est la façon de le mettre en œuvre dans Jeedom.
Je pensais utiliser la ligne de commande suivante:
Code : Tout sélectionner
find html/tmp/motion/232 -size +100M -delete;
Maintenant j'en fais quoi ?
Ce code est inspiré de choses que j'ai lues sur:
https://www.nas-forum.com/forum/topic/4 ... e-x-jours/
Mais un NAS Synology a un planificateur de tâches qu'un Jeedom n'a pas (à part un CRON dans un scénario mais ça je sais faire)...
-
- Timide
- Messages : 88
- Inscription : 06 mai 2019, 15:17
Re: Script d'effacement du contenu d'un répertoire
En fait on t'aide sans faire le taff à ta place, nuance.
Se que tu as trouvé semble pas mal, la commande find sous linux est assez facile à mettre en place.
Maintenant pour mettre en place un automatisme, on va déployer ta commande dans un démon (commande régulière) qu'on appelle cron
pour ça tu fais (en root) crontab -e (pour éditer la crontab journalier)
et tu vas rentrer une ligne du genre:
*/5 * * * * /ma_commande_find
-> pour la syntaxe, ce sont les heures / jours / minutes sur lesquels tu souhaites que la commande soit exécutée; plus d'infos ici:
https://www.linuxtricks.fr/wiki/cron-et ... -de-taches (partie guide de survie)
-> pour la commande tu as deux solutions. Sois tu appelles la commande directement (find html/tmp/motion/232 -size +100M -delete;) ou tu créés un exécutable qui va appeler cette commande (par exemple suppRep.sh qui contiendra la commande find...)
Re: Script d'effacement du contenu d'un répertoire
Je tiens à préciser que c'est bien dans cet esprit que je demandais de l'aide.
Seulement, ouvrir une porte quand tu ne sais pas où est la porte, pas facile. Autrement dit, il me manquait le début du commencement du démarrage du ... bref, par où commencer.
A force d'essayer, j'ai mis en place ce que je voulais faire.
Je constate quand même que ce sujet intéresse pas mal de monde: plus de 200 visites. Alors, c'est 200 visites de gens qui savent faire et qui me regardent galérer en ricanant et en ne donnant surtout pas la solution ? Ou c'est celles de ceux qui attendent qu'une solution soit publiée en se disant "tiens ça me serait utile ça" ?!! Pour ces derniers, je détaille ci-dessous comment j'ai fait. Les autres ont le droit de me descendre en flèche si ma méthode est bancale, mais je m'en fous, elle fonctionne
Donc:
- plugin Script: créer un nouveau script. Ici je lui ai donné comme nom d'équipement "Suppression vidéos Motion". Ne rien mettre dans le CRON.
Dans les commandes, j'ai créé la commande "Effacement":
- scénario: créer un nouveau scénario en mode programmé. En programmation, j'ai mis 0 8 * * * pour un déclenchement tous les jours à 8h.
En description du scénario, une simple action qui inclut un bloc Action:
Et roule ma poule !
Merci geronimoo0 de m'avoir mis sur la voie.
-
- Timide
- Messages : 88
- Inscription : 06 mai 2019, 15:17
Re: Script d'effacement du contenu d'un répertoire
parfait si ça fonctionne, ça servira à d'autres
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 12 invités