Better than set +e / set -e would be to take advantage of the fact that set -e is suppressed in the condition of an if: if invoke-rc.d --query ${service} start; [ $? = 104 ]; then services="$service $services" else echo "WARNING: init script for $service not found." fi -- Neil Moore, neil@s-z.org, http://s-z.org/neil/