odd-even weeks or calculating fortnights
Dec. 7th, 2017 01:03 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
This calculates even weeks, that is, it can calculate fortnights:
expr \( `date +%s` / 604800 \) % 2 >/dev/null || echo "even"
or if you want odd weeks:
expr \( `date +%s` / 604800 + 1 \) % 2 >/dev/null || echo "odd"
There are 604800 seconds in a week.
"% 2" gives the remainder after division by 2.
When expr evaluates to zero the command after the OR (||) is run.
My rubbish collection is on alternate weeks. But cron doesn't know about fortnights and I only put my rubbish out once every two or three months (I don't have much waste). So I use this in cron to trigger an alert on the appropriate day:
0 10 * * mon expr \( `date +\%s` / 604800 + 1 \) \% 2 > /dev/null || alert "garbage day"
I can't remember why I escaped the "%" symbols. I think maybe cron chokes on them if you don't.
Oh, I should add that "alert" is not a standard command. It is a script that I wrote which puts a notice on the screen and uses speech synthesis to announce the message.
expr \( `date +%s` / 604800 \) % 2 >/dev/null || echo "even"
or if you want odd weeks:
expr \( `date +%s` / 604800 + 1 \) % 2 >/dev/null || echo "odd"
There are 604800 seconds in a week.
"% 2" gives the remainder after division by 2.
When expr evaluates to zero the command after the OR (||) is run.
My rubbish collection is on alternate weeks. But cron doesn't know about fortnights and I only put my rubbish out once every two or three months (I don't have much waste). So I use this in cron to trigger an alert on the appropriate day:
0 10 * * mon expr \( `date +\%s` / 604800 + 1 \) \% 2 > /dev/null || alert "garbage day"
I can't remember why I escaped the "%" symbols. I think maybe cron chokes on them if you don't.
Oh, I should add that "alert" is not a standard command. It is a script that I wrote which puts a notice on the screen and uses speech synthesis to announce the message.
no subject
Date: 2017-12-09 11:24 am (UTC)I am impressed it is that infrequently. Broadly, the two of us create about 1.5 bags of rubbish a week (the Glad bags, so about half a dark green traditional bag), and if it weren't for the cat litter and waste cat food (and maggots) I'm not sure we could still swing that. (And that's not including the green waste and recycling bins - although I swap the bins about physically as a reminder).
I know I have completely avoided your cron job comment, but hey...
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From: