service; ps & grep help

Kevin Martin kevintm at ameritech.net
Mon Aug 25 13:49:22 UTC 2008



James Pifer wrote:
> I could use a little help with ps and grep. When running a command like:
>
> # ps -ewf | grep sendmail
> root      2730     1  0 Jul14 ?        00:00:01 sendmail: accepting connections
> smmsp     2739     1  0 Jul14 ?        00:00:00 sendmail: Queue runner at 01:00:00 for /var/spool/clientmqueue
> root      6500  6362  0 07:51 pts/3    00:00:00 grep sendmail
>
> Is there any way to run this command and get these results, but exclude
> the actual grep itself, which is the last line?
>
> A little background, I have a java based application that I've used a
> custom start and stop script for. Basically the stop script does:
> stop() {
>         for pid in `ps -efww | grep myapp | grep -v grep | cut -b 10-15`;do
>                 #echo $pid
>                 kill -9 $pid
>         done
>     RETVAL=$?
>     return $RETVAL
> }
>
> This has worked for years, but for some reason it has stopped working. I
> think it may be because the process is killing itself before it kills
> the app?
>
> I assume the correct way to do this is store the pid in a file that you
> reference, but I haven't figured out how to do that yet. 
>
> Any help is appreciated. 
>
> Thanks,
> James
>
>
>   
Could it be that the script itself is getting caught in your "ps" and is 
getting killed (not the grep embedded in the script)?  Could it be the 
"cut" part of the line (we've always used 'awk '{ print $2 }' ' in our 
stop blocks...never tried the cut idea) that's getting messed up somehow?

Kevin




More information about the fedora-list mailing list