-joka päivä klo. 23.59 kuvasta "päivä.jpg" otetaan kopio ja nimetään se menneen päivän mukaisesti eli päivä.jpg --> 01.02.2008.jpg.
-joka sunnuntai klo.23.59 kuvasta "viikko.jpg" otetaan kopio ja nimetään se menneen viikon mukaisesti eli viikko.jpg --> 01.2008.jpg.
-kuukauden viimeisenä päivänä klo.23.59 otetaan kopio kuvasta "kuukausi.jpg ja nimetään se menneen kuukauden mukaan eli kuukausi.jpg --> tammikuu.2008.jpg.
Ja vielä että ne kopiot tulisi omiin kansioihin, päivä, viikko, kuukausi.
Jos tämän lisäisi crontabiin niin homma saattaisi toimia. Kohdehakemistojen tulee olla olemassa ja hakemistopolkujen on syytä olla absoluuttisia. Nimeämiset eivät mene kuten sinä halusit vaan omasta mielestäni paremmalla tavalla. Jos haluat tehdä omalla tavallasi niin voit vapaasti soveltaa tätä esimerkkiä.
59 23 * * * cp "lähdepolku/päivä.jpg" "kohdepolku/päivä/$(date +%Y-%m-%d).jpg"
59 23 * * 7 cp "lähdepolku/viikko.jpg" "kohdepolku/viikko/$(date +%GW%V).jpg"
59 23 28-31 * * cp "lähdepolku/kuukausi.jpg" "kohdepolku/kuukausi/$(date +%Y-%m).jpg"
Kuukauden viimeinen päivä on hieman ongelmallinen ja käytännössä tämä kopioi kaikkina päivinä välillä 28-31 tiedoston toiseen hakemistoon. Seuraavan päivän tiedosto jyrää aina edellisenä päivänä kopioidun tiedoston joten seuraavan kuun alkaessa on hakemistossa edellisen kuun viimeiseltä päivältä oleva tiedosto.
Toimii muuten hyvin mutta toi /$(date .... juttu ei tunnu toimivan.
Tässä ote syslogista:
Feb 3 16:39:01 xxx /USR/SBIN/CRON[23184]: (root) CMD (cp /var/www/lampo/day.jpg /var/www/lampo/paiva/$(date +)
Feb 3 16:40:01 xxx /USR/SBIN/CRON[23214]: (root) CMD (cp /var/www/lampo/week.jpg /var/www/lampo/viikko/$(date +)
Feb 3 16:40:01 xxx /USR/SBIN/CRON[23218]: (root) CMD (cp /var/www/lampo/month.jpg /var/www/lampo/kuukausi/fff.jpg)
Feb 3 16:40:02 xxx /USR/SBIN/CRON[23219]: (root) CMD (/home/xxx/update.sh)
Feb 3 16:40:02 xxx /USR/SBIN/CRON[23215]: (root) MAIL (mailed 62 bytes of output but got status 0x0001 )
Tässä crontab:
*/1 * * * * cp /var/www/lampo/day.jpg /var/www/lampo/paiva/$(date +%Y-%m-%d).jpg
*/1 * * * * cp /var/www/lampo/week.jpg /var/www/lampo/viikko/$(date +%GW%V).jpg
# */1 * * * * cp /var/www/lampo/month.jpg /var/www/lampo/kuukausi/$(date +%Y-%m).jpg
*/1 * * * * cp /var/www/lampo/month.jpg /var/www/lampo/kuukausi/fff.jpg
Toi fff.jpg on ainoa kuva mikä tulee kansioon, noi missä on toi date juttu ei toimi.
Syslogissa se näkyy pelkkä $(date +).
Kun komentokehotteesa ajan "cp /var/www/lampo/day.jpg /var/www/lampo/paiva/$(date +%Y-%m-%d).jpg" silloin kuva tulee oikein.
Eli toi crontab ei osaa tota komentoa?