Yep, that's exactly what it's doing. You typically don't want to do a kill on a process if you don't have a process id... hence the check if it's empty. Why, then, doesn't it just do this? if [ "$pid" != "" ] Well, this takes me back a bit so my memory might not be 100% accurate here. Say $pid is empty, though. What this would look like is: if [ "" != "" ] Modern shells can handle this just fine. Older shells (like the original Bourne shell) got confused by this. So as a matter of practice, you would put a guaranteed non-NULL character in both sides of the string. If the environment variable was null, then it would look like so: if [ "X" != "X" ]; which is the same as "" != "". As I said, though, it's been a while since I learned to do that so my memory could be shot. On Monday 31 July 2006 14:36, David wrote: > What is the point of the below in a script? This snippage is in the > 'stop' portion of an init script. I just dont see the point of the if > statement. It almost looks like it's just making sure $pid isn't empty. > > > ------begin snippet------ > > pid=`/bin/ps -e | grep process_name | grep -v mon | grep -v grep | > sed -e 's/^ *//' -e 's/ .*//' | head -1` > if [ "X$pid" != "X" ] > then > /bin/kill $pid > echo "**process_name** interface stopped" > fi > ------end snippet------ > > Thanks, > David --------------------------------------------------- PLUG-discuss mailing list - PLUG-discuss@lists.plug.phoenix.az.us To subscribe, unsubscribe, or to change you mail settings: http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss