tastier text info
authorChris Koeritz <fred@gruntose.com>
Mon, 2 Jan 2017 20:32:56 +0000 (15:32 -0500)
committerChris Koeritz <fred@gruntose.com>
Mon, 2 Jan 2017 20:32:56 +0000 (15:32 -0500)
infobase/configuration/cron/aa_cron_defaults.crontab
infobase/configuration/cron/nechung_fortune.crontab

index d9b71b0b9586d86f7a1e5665b959fc122a815aa3..f86ce8dd1d3e63c4df0edd1c7b9381681f05ec6a 100644 (file)
@@ -1,29 +1,65 @@
 
 #[aa cron defaults]
+#
 # cron default bits to add at top of crontab...
+# by fred t. hamster, GNU GPL v3 license.
 
-# these stanzas are assumed to be present in every one of the other cron examples.
-# unfortunately there is no way to include cron files in other cron files, so the functional parts here just need
-# to be plopped into the user's actual crontab.
+# these stanzas are assumed to be present in every one of the other cron
+# example files.  unfortunately there is no way to include cron files in other
+# cron files, so the functional parts here should just be pasted directly into
+# the user's crontab.
 
-# set the shell to bash.  this is not set by default for many crons.
+# set the shell to bash.  (not the default for some cron implementations.)
 SHELL=/bin/bash
 
-# a key to the crontab positional entries for times.
+# crontab miniature docs:
+#
+# below is the short form key to the crontab positional entries for times:
+#     m h dom mon dow command
 #
-# m h dom mon dow command
+# below is a longer form that spells out the meaning of each position:
+#     minute(s) hour(s) dayOfMonth(s) month(s) dayOfWeek(s) command
 #
-# longer form spelling out the positions.  these are optionally plural because cron allows for multiple entries in different forms.
-# minute(s) hour(s) dayOfMonth(s) month(s) dayOfWeek(s) command
+# each field is optionally plural because cron allows each of the positions to
+# indicate multiple values.  generally it is simpler and sufficient to have a
+# single value in the field, but there are also good reasons that some tasks
+# would have a more complicated formula (such as, "every couple of days" rather
+# than "every day").
+#
+# the wildcard '*' indicates that every valid value is okay for that field.
+# the wildcard form of a crontab line is this: "* * * * * command"
+# that "command" will execute every single minute.
 
-# set a user name for writing unique log files.  this is important because crontab doesn't have USER defined,
-# although we can count on HOME being defined, luckily.
+# set a user name for writing unique log files.  this is important because
+# cron doesn't have the variable USER defined.  cron does define HOME, which
+# is pretty lucky for us...
 # you may want to use a more appropriate user name than mine, which is "fred".
 USER=fred
 
-# the guts of the crontab would go here.  it would spell out some time or times for the command to be executed.
-# it's actually okay to have a really long command with multiple sub-commands; just put it inside parentheses to group
-# a bunch of commands together.  there are many examples of doing this in the other files.
-# also, it's often important to send the output someplace.  /dev/null works if you don't ever want to see it, but i
-# prefer to write log files in the /tmp directory which include the user name defined above.
+# the guts of the crontab would follow below.  this usually is a set of valid
+# crontab lines that spell the time or times for commands to be executed.  my
+# crontabs usually have from 3 to 8 entries because i tend to atomicize the
+# tasks, rather than writing big complicated multi-purpose scripts.  not saying
+# that's always better, it's just how i roll (my crontabs)...
+#
+# also, it is fine to have a really long command with multiple sub-commands;
+# just put it inside parentheses to group a bunch of commands together.  there
+# are many examples of doing this in the other crontab examples in this folder.
+#
+# further, it's often important to send the output from the cron job to an
+# output location.  doing this keeps cron from sending you a lot of emails
+# with cron job output on some systems.  you can use the normal output
+# redirection operators to do this (e.g. '>', '2>', '&>', '>>' and '&>>').
+# /dev/null works as an output target if you don't ever want to see the
+# results from your cron jobs.  i usually prefer to write log files in the /tmp
+# directory with the ${USER} variable in the file name.  here's an example of
+# a real command with output that will *append* both output and error streams
+# ('&>>') to an output file.  if your output can be huge, then you may want to
+# overwrite the output file instead ('&>').
+
+# runs every minute and recreates a fortune for thunderbird signature.
+# a lot of the detail below is to get the feisty meow environment loaded for
+# the command.
+* * * * * (export LIGHTWEIGHT_INIT=true; source $HOME/feisty_meow/scripts/core/launch_feisty_meow.sh; perl $HOME/feisty_meow/scripts/text/new_sig.pl) &>>/tmp/${USER}-cron-nechung_fortune.log
+
 
index 86b59115c57e5e89d0952d4e69e940a17d44069e..e081257f3ba0796d5d967cbd19dd9be5886e11b0 100644 (file)
@@ -1,4 +1,4 @@
 
 #[nechung fortune]
-* * * * * (export LIGHTWEIGHT_INIT=true; source $HOME/feisty_meow/scripts/core/launch_feisty_meow.sh; perl $HOME/feisty_meow/scripts/text/new_sig.pl) &>>/tmp/zz_nechung_fortune_$USER.log
+* * * * * (export LIGHTWEIGHT_INIT=true; source $HOME/feisty_meow/scripts/core/launch_feisty_meow.sh; perl $HOME/feisty_meow/scripts/text/new_sig.pl) &>>/tmp/${USER}-cron-nechung_fortune.log