reminder - remind user of events
reminder [-f, --force] [--home DIR] [-m, --mail ADDR]
reminder -?, -h, --help | --man
reminder -V, --version
This program issues notifications about user-defined events. The events have to be specified in the event file (see EVENT FILE) and consist of a date, a list of triggers and an arbitrary text. The text contains the message describing the event. The triggers define on which days a reminder notification is to be issued.
reminder is meant to be run automatically on a regular basis, e.g. every hour as a cron job. It is also possible to execute it manually, but this is not a typical use case for a program like this.
reminder processes the events once a day, as early as possible. If called more than once on the same day it will simply do nothing and exit silently. The above mentioned cron job interval of about one hour is recommended for desktop systems that are switched off from time to time because this way you can be sure to receive pending notifications quite soon after start-up. For systems that are running 24/7 a daily execution will suffice, of course.
On the other hand, if the program is not executed for one or even more days it will nevertheless send notifications that were due to be issued on one of these skipped days. Thus, no reminder will be lost, but it could be too late then, depending on the triggers chosen.
There are two types of notification delivery: via email or simply on standard output.
When running reminder as a cron job it is recommended to specify the --mail parameter instead of printing to standard output. In this mode notifications are sent by mail. There are two good reasons for preferring this way of transport: (1) by convention, cron jobs should be `silent' and only print output when there are errors. This output is then sent to the user via email. (2) Each reminder message will be sent in a seperate email so that the user can delete those reminders that are not needed anymore while keeping others in his mailbox. Moreover, the mail subject contains all the necessary information about the event. In that way the reminders are visible merely by looking at the inbox and without the need to read the mail body.
When running reminder for the first time it will not find an event file and therefore create a template that contains some examples and can be customized (see FILES). The format of a valid line in the event file is as follows:
<year> <month> <day> <triggering_days> <arbitrary_text>
The fields are seperated by spaces with the exception that arbitrary_text is
allowed to contain spaces.
year must be a 4-digit number.
month and day are allowed but not required to have a leading zero.
Each of the first three fields can be an asterisk (*) which means that the
event takes place every year, month, or day.
triggering_days consists of triggers seperated by commas (no spaces!).
Each trigger consists either of a plain number or a span of numbers (1-4 is
equivalent to 1,2,3,4).
A trigger represents the number of days before the event's date when a reminder
notification is to be issued.
These numbers need not to be ordered in any way.
The following example creates a notification for the event every year on May 15 as well as on May 21 and 22:
* 05 23 8,1-2 some text message
This switch should only be used when calling the program interactively from the command line. Using it for a cron job is quite useless.
$HOME/.reminder_events, $HOME/.reminder_lastrun
crontab(1)
Copyright (C) 2004 Joachim Jautz http://www.jay-jay.net/contact.html
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA