bin/88486: [patch] make periodic(8) quiet (configurable) when no
output was generated
Dominik Brettnacher
domi at saargate.de
Fri Nov 4 04:40:13 PST 2005
>Number: 88486
>Category: bin
>Synopsis: [patch] make periodic(8) quiet (configurable) when no output was generated
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Fri Nov 04 12:40:12 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Dominik Brettnacher
>Release: FreeBSD 5.4-RELEASE i386
>Organization:
>Environment:
System: FreeBSD debussy.saargate.de 5.4-RELEASE FreeBSD 5.4-RELEASE #4: Tue Aug 23 12:00:38 CEST 2005 domi at debussy.saargate.de:/usr/obj/usr/src/sys/DEBUSSY i386
>Description:
By default, periodic(8) outputs a notification like "No output from the x files processed" if the scripts executed did not generate any output. While this
is useful to know whether the scripts have been executed at all, notifications
like these are too verbose in certain environments.
The attached patch introduces a new option "<basedir>_show_empty_output"
to make this configurable. Setting it to YES (the default) results in the
known behaviour. Setting it to NO means that no output (and thus no mail, if
periodic output is sent out via mail) is generated.
>How-To-Repeat:
>Fix:
--- /usr/sbin/periodic Thu Apr 3 10:55:30 2003
+++ periodic Mon Oct 31 17:13:39 2005
@@ -40,11 +40,11 @@
case "$output" in
/*) pipe="cat >>$output";;
"") pipe=cat;;
- *) pipe="mail -s '$host ${arg##*/} run output' $output";;
+ *) pipe="mail -E -s '$host ${arg##*/} run output' $output";;
esac
- success=YES info=YES badconfig=NO # Defaults when ${run}_* aren't YES/NO
- for var in success info badconfig
+ success=YES info=YES badconfig=NO empty_output=YES # Defaults when ${run}_* aren't YES/NO
+ for var in success info badconfig empty_output
do
case $(eval echo "\$${arg##*/}_show_$var") in
[Yy][Ee][Ss]) eval $var=YES;;
@@ -95,8 +95,11 @@
done
if [ $empty = TRUE ]
then
- [ $processed = 1 ] && plural= || plural=s
- echo "No output from the $processed file$plural processed"
+ if [ $empty_output = TRUE ]
+ then
+ [ $processed = 1 ] && plural= || plural=s
+ echo "No output from the $processed file$plural processed"
+ fi
else
echo ""
echo "-- End of $arg output --"
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list