Synology-Forum.nl

Overige software => File Station => Topic gestart door: bassie70 op 21 oktober 2019, 18:00:12

Titel: mappen legen uit profielen
Bericht door: bassie70 op 21 oktober 2019, 18:00:12
Ik kan het nergens vinden, misschien heeft hier iemand de oplossing.
Op onze synology staan de profielen van zo een 60 gebruikers.

Alle gebruikers hebben een downloadmap, deze wil ik dus wekelijks via een script oid laten legen.
Is er ergens een script die bij elke gebruiker de download map leeg maakt?

Dat zou heel mooi zijn en scheelt ons een hoop werk.

Ik ben benieuwd.

Gr Bas
Titel: Re: mappen legen uit profielen
Bericht door: Briolet op 21 oktober 2019, 21:14:21
Je maakt een lijst met de 60 paden naar die downloadmappen.  En dan laat je een script die lijsr wekelijks inlezen en de mappen legen.

Lastiger wordt het als gebruikers de naam van de downloadmap zelf kunnen wijzigen. Dan moet je een stuk meer werk doen omdat je niet meer blind op die lijst kunt vertrouwen.
Titel: Re: mappen legen uit profielen
Bericht door: bassie70 op 22 oktober 2019, 13:32:58
Ok, als dat de oplossing is, is hier toevallig een script aanwezig? Of hoe maken we dat script?

Titel: Re: mappen legen uit profielen
Bericht door: Briolet op 22 oktober 2019, 14:26:28
Voor een script schrijven kun je hier kijken. Unix shell scripting (https://www.tutorialspoint.com/unix/shell_scripting.htm)

Ook als je alleen bestaande scripts wilt aanpassen heb je deze basiskennis uit de tutorial nodig.
Titel: Re: mappen legen uit profielen
Bericht door: bassie70 op 22 oktober 2019, 14:42:58
Thanks, daar kom ik wel uit. :thumbup:
Titel: Re: mappen legen uit profielen
Bericht door: Briolet op 22 oktober 2019, 15:02:05
Overigens hoef je het wekelijks uitvoeren niet zelf te programmeren. Dat gaat gewoon via de taakplanner van de nas.
Titel: Re: mappen legen uit profielen
Bericht door: Birdy op 22 oktober 2019, 15:02:53
Je moet er wel rekening mee houden, dat niet alle functies/commands aanwezig zijn in DSM.
Titel: Re: mappen legen uit profielen
Bericht door: Briolet op 22 oktober 2019, 16:02:13
Er zullen alleen standaard functies nodig zijn die er wel in zitten.

Je definieert een array waar je het variabele deel van de paden in zet. (waarschijnlijk de account namen)

lijst=(jan piet henk)
Vervolgens loop je met een for loopje door die lijst, bouwt het pad op naar de betreffende folder en wist de inhoud.

Iets in de trant van

lengte=${#lijst[@]}

for (( index=0; index<$lengte; index++ )); do
  rm -fv "/volumex/xxxxx/"${lijst[${index}]}"/downloadfolder/*.*"
done

Alles ongeteste code. En dat pad is ook alleen een voorbeeld. Alles hangt er vanaf hoe logisch de downloadfolders zijn. Als er geen logica in zit die programmeerbaar is, dan moet je het hele pad in de lijst opnemen.

En test het script niet met "*.*" op het eind van het pad, maar met een specifieke filenaam. (voor het geval een fout in de code je hele nas wist)