The two versions you quoted are functionally equivalent on Linux. If there's a z before the variable expansion and a z before the word "yes", then the two z's cancel out and don't affect the string comparison.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?