From mboxrd@z Thu Jan 1 00:00:00 1970 From: pacho baratta Subject: Re: weird script behaviour Date: 23 May 2003 16:26:55 +0200 Sender: linux-admin-owner@vger.kernel.org Message-ID: <1053700015.1246.39.camel@alice> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: List-Id: Content-Type: text/plain; charset="us-ascii" To: linux-admin@vger.kernel.org Il ven, 2003-05-23 alle 14:48, urgrue ha scritto: > i have script that runs ok from the prompt but doesnt run ok at all > from cron (yes we've all seen this before, but this time its weirder > than usually). > i even tried running it with env -i , but i cant reproduce the problem > at the shell - it only appears when started from cron. > the problem also does NOT appear when started with "at". > i snipped the script down to a bare test minimum and am still able to > reproduce the error, here it is: > > #!/bin/bash > > while true > do > sleep 1 > echo "start" | logger > ping -n -c 1 -w 3 10.155.11.37 && continue > echo "we didnt continue..... | logger > done > > point is to spot if a ping doesnt go. > run from the prompt, it works fine - it pings every second and i never > get to the "we didnt continue" part. > run from cron, it may or may not run ok for a little while (a minute or > so), but then it starts to repeatedly reach the "we didnt continue" > part - and itll keep hitting that part over and over again until i > intervene. > with a little extra checking, i found out that the ping isn't returning > zero (as it does from the shell), but its returning 141! where does > this come from? why does it only start appearing after a minute or so? the script is not good here's the prob. u say echo "we didnt continue..... | logger without an "if...then" it's always true, so u always do echo "we didn't..." i'd better wrie so: #!/bin/sh while true do sleep 1 echo "start" | logger if ping -n -c 1 -w 3 10.155.11.37 then echo "ping works and host is up, man!!" | logger else echo "ping what?? is network up? is that host up??" | logger fi done regards, pacho -- pacho baratta IT Consultant tel. +39 347 078.51.31 www.evolinux.it mail: pachox@evolinux.it