scripts/run-cron
changeset 13 fd71994b6ce0
equal deleted inserted replaced
12:07047572a27b 13:fd71994b6ce0
       
     1 #!/bin/sh
       
     2 
       
     3 # Generic run-cron script with zabbix-friendly status outputs
       
     4 # Invocation:
       
     5 #	run-cron name prog
       
     6 #
       
     7 #	where name is run name (logs, status etc.)
       
     8 #	and prog is the script which will be invoked.
       
     9 
       
    10 name=$1
       
    11 shift
       
    12 script="$@"
       
    13 
       
    14 logdir=`dirname $name`
       
    15 mkdir -p $logdir
       
    16 [ $? -eq 0 ] || exit 1
       
    17 
       
    18 l=$name-`date +%FT%T`
       
    19 
       
    20 $script >$l.out 2>$l.err
       
    21 echo $? > $l.status
       
    22 
       
    23 [ -L $name-last.out ] && mv $name-last.out $name-prev.out
       
    24 [ -L $name-last.err ] && mv $name-last.err $name-prev.err
       
    25 [ -L $name-last.status ] && mv $name-last.status $name-prev.status
       
    26 
       
    27 ln -sf $l.out $name-last.out
       
    28 ln -sf $l.err $name-last.err
       
    29 ln -sf $l.status $name-last.status