F18, F19 webalizer problem?

Mike Wright mike.wright at mailinator.com
Sat Apr 27 23:41:06 UTC 2013


04/27/2013 03:49 PM, Cameron Simpson wrote:
> On 26Apr2013 09:12, Patrick O'Callaghan <pocallaghan at gmail.com> wrote:
> | On Fri, 2013-04-26 at 15:36 +0300, Cristian Sava wrote:
> | > Webalizer is enabled via /etc/sysconfig/webalizer but I don't understand
> | > why /etc/cron.daily/00webalizer has this line:
> | >
> | > [ "z$WEBALIZER_CRON" != "zyes" ] && exit 0
> | >
> | > that I think it should be (and it is working this way)
> | >
> | > [ "$WEBALIZER_CRON" != "yes" ] && exit 0
> | >
> | > What is the mistery?
> |
> | The "z$Foo" != "zbar" style is idiomatic in Shell scripts. I think it's
> | to ensure portability between Shells with slightly different expression
> | rules.
>
> In particular it avoids issues where $WEBALIZER_CRON looks like a test
> operator such as "-z" or something unfortunate.
>

Also there may be situations where $SOME_VAR evaluates to null.  Then a 
test looks like [ != "something" ] which is guaranteed to break.  By 
(pre|post)fixing each side with an arbitrary character such as Z that 
same scenario would yield [ "Z" != "Zsomething" ] and would survive 
shell parsing.


More information about the users mailing list