Aide sur script Synology DS216j

Aide sur script Synology DS216j - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 19-01-2017 à 09:06:24    

Bonjour,
Ces lignes de script ne fonctionne pas.
 
mkdir /volume1/admin/$(date -d) creation du dossier du jour
mv /volume1/admin/*.bmp /volume1/admin/$(date -d) deplacement des fichiers vers le dossier du jour
find /volume1/admin/* -type d -mtime +180 | xargs rm -rf suppression des dossiers
 
Selon vous, où est-ce qu'il y a une erreur ?
En vous remerciant d'avance,


---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 09:06:24   

Reply

Marsh Posté le 19-01-2017 à 09:07:46    

Quel message d'erreur as-tu quand tu les exécutent une à une et dans quel contexte tu souhaites les utiliser (script manuel, crontab, quel shell, etc...) ?

Message cité 1 fois
Message édité par o'gure le 19-01-2017 à 09:08:30

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 09:09:26    

si c'est sur un linux classique, un coup de  

man date


te dira ce qui ne va pas avec l'option -d de date


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 09:14:52    

Bonjour o'gure,
merci de ton post. :jap:

o'gure a écrit :

Quel message d'erreur as-tu quand tu les exécutent une à une et dans quel contexte tu souhaites les utiliser (script manuel, crontab, quel shell, etc...) ?


En fait, il ne se passe rien.

o'gure a écrit :

dans quel contexte tu souhaites les utiliser (script manuel, crontab, quel shell, etc...) ?


Tu me parles chinois là. Je n'y connais rien. Peut-tu détailler ?

o'gure a écrit :

si c'est sur un linux classique


C'est dans NAS Synology DS216j\panneau de configuration\Planificateur de tâches


Message édité par popeye0 le 19-01-2017 à 09:16:26

---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 09:29:01    

As tu un accès ssh à ton NAS ?
Su un linux classique, la commande "date -d" est incomplète et demande un paramètre complémentaire

[ oggy@EnezVriad ~ ]
> date -d
date: option requires an argument -- 'd'
Try 'date --help' for more information.


http://www.linux-france.org/articl [...] ate-1.html


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 09:34:36    

En effet, je viens de tester et c'est sûr en exécutant le script ligne par ligne et c'est $(date) qu'il n'aime pas.
 
J'avais remplacé $(date) par ABCD à la fin de cette 1ère ligne temporairement et ça a fonctionné.
Mais je n'arrive pas à trouver pour résoudre ce $(date)


Message édité par popeye0 le 19-01-2017 à 09:35:24

---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 10:18:24    

%D ne fonctionne pas
$(date +%d/%m/%y) ne fonctionne pas (issu de http://www.developpez.net/forums/d [...] -date-jour )
 


---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 10:22:07    

popeye0 a écrit :

%D ne fonctionne pas
$(date +%d/%m/%y) ne fonctionne pas (issu de http://www.developpez.net/forums/d [...] -date-jour )
 


Code :
  1. mkdir -p


:o


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 19-01-2017 à 10:25:35    

popeye0 a écrit :

%D ne fonctionne pas
$(date +%d/%m/%y) ne fonctionne pas (issu de http://www.developpez.net/forums/d [...] -date-jour )
 


tu veux faire quoi exactement ?


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 10:27:02    

Le paramètre -p pour ?
mkdir -p/volume1/admin/%D ne fonctionne pas


Message édité par popeye0 le 19-01-2017 à 10:29:09

---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 10:27:02   

Reply

Marsh Posté le 19-01-2017 à 10:29:27    

'tain mais arrêter de lancer des commandes au petit bonheur la chance... regarder avant dans la doc ce que ça veut dire (man mkdir).
idem arrêter de proposer des solutions sans savoir ce que les gens cherchent à faire (je doute qu'il souhaite 3 répertoires imbriqué avec d"abord le jour puis le mois et l'année...) :/

 

-p est une option de mkdir (donc il faut un espace entre l'option -p et le reste des arguments, là tu as coller -p/) permettant de créer un répertoire et ses parents si'l n'existe pas. Par exemple
mkdir a/b/c va créer le répertoire a, le b dans le a et le c dans le b

 

là tu colles le %D comme ça, là sans comprendre son sens...

 

Je te dis te de jeter dans un puits et ta commande marchera, tu le fais ?


Message édité par o'gure le 19-01-2017 à 10:37:38

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 10:29:47    

o'gure a écrit :


tu veux faire quoi exactement ?



---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 10:33:04    

à priori tu cherche à créer une répertoire en fonction de la date et pour cela tu veux utiliser la commande date.
Déjà:
- indique nous le format des noms du répertoire que tu souhaites à terme
- essaye juste la commande date en lisant le manuel
- chaine mkdir avec la commande date dedans

Message cité 1 fois
Message édité par o'gure le 19-01-2017 à 10:34:03

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 10:37:40    

o'gure a écrit :

tu veux faire quoi exactement ?


1) De façon automatique à une horaire précise, créer un dossier au format suivant AAAA/MM/JJ. Le Synology peut créér automatiquement le dossier à une horaire précise grâce à son planificateur de tâches intégré.
2) Dans ce dossier nouvellement créé, déposer automatiquement tous les fichiers image *.bmp contenu à la racine du volume
3) Supprimer quotidiennement et automatiquement tous les dossiers > à 180 jours


Message édité par popeye0 le 19-01-2017 à 10:39:12

---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 10:40:18    

Déjà le 1, tu veux que ça soit 3 dossiers imbriqués ou un dossier qui s'appelle exactement ?
Si 3 dossiers
mkdir -p $(date +%Y/%m/%d)
si c'est 1 un seul dossier il faut échapper le / (cela étant je te recommande plutot de mettre un - car /est le séparateur de dossier
mkdir $(date +%Y\/%m\/%d)
 
Ensuite lit la doc pour comprendre comment ce format fonctionne !


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 10:42:12    

o'gure a écrit :

à priori tu cherche à créer une répertoire en fonction de la date


Tout à fait

o'gure a écrit :

- indique nous le format des noms du répertoire que tu souhaites à terme


Dossier au format suivant AAAA/MM/JJ

o'gure a écrit :

- essaye juste la commande date en lisant le manuel


Cette page : http://www.linux-france.org/articl [...] ate-1.html ?
ou
ce manuel Synology Syno_UsersGuide_NAServer_fra.pdf ?

o'gure a écrit :

Déjà le 1, tu veux que ça soit 3 dossiers imbriqués ou un dossier qui s'appelle exactement ?
Si 3 dossiers
mkdir -p $(date +%Y/%m/%d)
si c'est 1 un seul dossier il faut échapper le / (cela étant je te recommande plutot de mettre un - car /est le séparateur de dossier
mkdir $(date +%Y\/%m\/%d)
 
Ensuite lit la doc pour comprendre comment ce format fonctionne !


Grâce au planificateur de tâche Synology, à 23:55, je veux la création automatique d'1 dossier à la date du jour sous le formatsuivant AAAA/MM/JJ.
Et toujours grâce au planificateur de tâche Synology, à 00:10, tous les fichiers images *.bmp sont déposés dans ce dossier.


Message édité par popeye0 le 19-01-2017 à 10:49:59

---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 11:02:08    

Les 2 premières lignes de script fonctionnent  :bounce:

 

mkdir /volume1/admin/`date +%Y%m%d`
mv /volume1/admin/*.bmp /volume1/admin/`date +%Y%m%d`

 

La 3ème ligne ne fonctionne pas
find /volume1/admin/* -type d -mtime +0 | xargs rm -rf

 

J'ai mis 0 pour tester au lieu de 180 jours. Je ne vais pas attendre 6 mois. [:le marabout:1]


Message édité par popeye0 le 19-01-2017 à 11:49:50

---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 11:49:42    

Une idée ?


---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 13:49:17    

c'est pas la peine de le upper au bout de 17 minutes vue le dynamisme de cette catégorie :o
 
-mtime +0 => modifié depuis un jour ou plus


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 13:50:06    

http://unix.stackexchange.com/ques [...] han-2-days


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 19-01-2017 à 14:28:37    

Citation :

créer un dossier au format suivant AAAA/MM/JJ

tu ne peux pas crèer UN dossier dans ce format : le / représente le structure hiérarchique du système de fichier sur UNIX/Linux.
 
à la rigueur, tu pourrais créer une hiérarchie de dossiers, mais ni un fichier, ni un répertoire dont le nom contiendra ce caractère.

Reply

Marsh Posté le 19-01-2017 à 20:46:39    

o'gure a écrit :

c'est pas la peine de le upper au bout de 17 minutes vue le dynamisme de cette catégorie :o


17 min ? 47 min plutôt, non ?

o'gure a écrit :

-mtime +0 => modifié depuis un jour ou plus


?

 

Bah pourtant, cette ligne fonctionne :
mkdir /volume1/admin/`date +%Y%m%d`

Message cité 1 fois
Message édité par popeye0 le 19-01-2017 à 20:47:04

---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 19-01-2017 à 21:18:42    

popeye0 a écrit :


17 min ? 47 min plutôt, non ?


Peu importe, tant que ton topic est dans le haut de la première page voir dans la première page, ça ne sert à rien de le remonter. Les gens ici ne sont pas payés pour faire du support...


??

popeye0 a écrit :


Bah pourtant, cette ligne fonctionne :
mkdir /volume1/admin/`date +%Y%m%d`


date +%Y%m%d et date +%Y/%m/%d ce n'est pas pareil.
Comme dit watael on ne peut créer un dossier ou un fichier avec le caractère / dans le nom.

Message cité 1 fois
Message édité par o'gure le 19-01-2017 à 21:18:55

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 24-01-2017 à 23:04:33    

o'gure a écrit :

date +%Y%m%d et date +%Y/%m/%d ce n'est pas pareil.
Comme dit watael on ne peut créer un dossier ou un fichier avec le caractère / dans le nom.


Ok

o'gure a écrit :

-mtime +0 => modifié depuis un jour ou plus


Oui, tout à fait, c'est bien ça.

 

Je rappelle que pour tester, je met 0 à la place de 180 jours.
Car je ne vais quand même pas attendre 6 mois pour ce qui est de la date des dossiers, pour tester [:le marabout:1]

 

Mais cette ligne de script : find /volume1/admin -name *~ -type d -mtime +0 | xargs rm -rf
ne fonctionne pas pour ce que j'ai besoin : Supprimer quotidiennement et automatiquement tous les dossiers > à 180 jours


Message édité par popeye0 le 24-01-2017 à 23:09:43

---------------
✖ => Rentier de père en fils depuis 1848 <= ✖
Reply

Marsh Posté le 25-01-2017 à 13:22:58    

dire « ça marche pas », c'est comme dire au médecin « je suis malade ».
 
que se passe-t-il ?
que ne se passe-t-il pas ?
que se passe-t-il qui ne devrait pas se passer ?
...

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed