Yanki
Posts: 15
Joined: Mon Feb 11, 2019 4:17 pm

bestanden verwijderen van dagen ervoor?

Thu Feb 28, 2019 4:57 pm

Ik heb op het werk een raspberry pi 3 staan waarop een webserver draait.
In een map van de server sla ik iedere meetwaarde als png op in deze map.: /var/www/html/Briefjes
in mijn php script gebruik ik de volgende code om de png files over te zetten van de server map naar de fdrive map , andere manier gaat dan niet en daarom dan deze code.:

Code: Select all

$srcfile='/var/www/html/Briefjes/Meetrapport_'.$savedatum.'.png';
$dstfile='/home/pi/Google Drive/Online logboek2019/Meetrapport_'.$savedatum.'.png';
if(!@copy($srcfile,$dstfile))
{
    $errors= error_get_last();
    echo "";
} else {
     echo "";
}
Op de achtergrond loop FDrive mee (soort google voor de niet wetende) die alles wat in de google map staat online te synchroniseren.

Echter de briefjes in de map /var/www/html/Briefjes moet ik dan handmatig weghalen wat ouder is als 1 dag.
Dit zou ik graag willen automatiseren, echter ik ben niet zo een held in cronjob.

Kan mij iemand hierbij helpen hoe ik die cronjob moet maken?

Yanki
Posts: 15
Joined: Mon Feb 11, 2019 4:17 pm

Re: bestanden verwijderen van dagen ervoor?

Sun Mar 03, 2019 6:52 am

Ondertussen heb ik gevonden dat deze regel doet wat ik zou willen.:

Code: Select all

* * * * 1 sudo find /var/www/html/Briefjes* -mtime +6 -type f -delete
Dit heb ik getest door in de command window de delete weg te laten en te kijken wat hij vind en dat werkt.:

Code: Select all

* * * * 1 sudo find /var/www/html/Briefjes* -mtime +6 -type f
Maar nu heb ik hem in de cron gezet en getest via de desktop versie, maar als ik dan ga controleren weer in de command window staan ze er nog in , dus de cron heeft niets gedaan.

Weet iemand waarom niet?

zonstraal
Posts: 81
Joined: Fri Apr 10, 2015 8:50 am
Location: Spain

Re: bestanden verwijderen van dagen ervoor?

Sun Mar 03, 2019 8:54 am

Normaal kun je instellen dat je een melding krijgt waarom de cron niet werkt.
Meestal gaat het over de schrijfrechten die niet goed zijn ingesteld als het commando verder wel goed is.

incognitum
Posts: 277
Joined: Tue Oct 30, 2018 3:34 pm

Re: bestanden verwijderen van dagen ervoor?

Sun Mar 03, 2019 1:07 pm

Twee puntjes:

1) als je het commando "find /var/www/html/Briefjes*" uitvoert doet normaal gesproken niet find maar bash de wildcard expansion. Dat is het omzetten van het Briefjes* in een lijst met bestandsnamen.
Ik weet niet of dat wel werkt in een crontab.

2) het is een slechte gewoonte om commando's die bestanden verwijderen als root uit te voeren.


Er vanuitgaand dat gebruiker www-data schrijfrechten in de map /var/www/html/Briefjes heeft, zou ik dergelijke commando's eerder in de crontab van gebruiker www-data zetten. De commando's worden dan als gebruikersnaam www-data uitgevoerd.

Probeer het eens met:

Code: Select all

sudo crontab -u www-data -e
Voeg regel toe:

Code: Select all

@daily  find /var/www/html/Briefjes -name '*.png' -mtime +1 -type f -delete

Yanki
Posts: 15
Joined: Mon Feb 11, 2019 4:17 pm

Re: bestanden verwijderen van dagen ervoor?

Sun Mar 10, 2019 8:53 am

Zal het eens proberen, kom hier nog op terug.

Return to “Nederlands”