script use min resource ( grep grep)


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting script use min resource ( grep grep)
# 1  
Old 03-07-2011
script use min resource (ps x |grep |grep)

Hi
i wrote script use it as watchdog ( i mean it check another program (pooya) whenever that was killed (closed or crashed) it run another script (pooya_start.sh) to start it,
this script work fine and do the job for me , i need help of an expert to tell me (exact command) how to change this script use Minimum resource ( Cpu & memory) to work?
Code:
while sleep 1
do
  if ps x | grep -v grep | grep -c pooya >/dev/null
  then 
  echo "" 
  else
echo `date` "R" >> /tmp/Check_pooya.log
 /var/bin/pooya_start.sh start &
  fi
done

exit 0

1,( line 3) : i was read in other forum don't grep grep : how could change this to other way ( please wrote exact command for me)

2.( line 5) : is there any better command instead of echo "" use no memory and do nothing ( just wrote this line to do nothing if pooya is run)

I really appreciate any help
Best regards,

Last edited by pooyair; 03-07-2011 at 08:41 AM..
# 2  
Old 03-07-2011
Which OS and shell are you using?
This User Gave Thanks to radoulov For This Post:
# 3  
Old 03-07-2011
thanks for reply
Stlinux (stapi)
Sh4
Linux version 2.6.23.17_stm23_A21-slobbie

Last edited by pooyair; 03-07-2011 at 10:21 AM..
# 4  
Old 03-07-2011
I don't know what's Sh4, but if:

Code:
pgrep pooya

or

Code:
pgrep -f pooya

return the correct pid, you could try something like this:

Code:
while sleep 10; do
  pgrep pooya > /dev/null || {
    echo `date` R >> /tmp/Check_pooya.log
    /var/bin/pooya_start.sh start &
    }
done

---------- Post updated at 03:26 PM ---------- Previous update was at 03:25 PM ----------

Edit: && -> || Smilie
This User Gave Thanks to radoulov For This Post:
# 5  
Old 03-07-2011
pgrep command is unknown in sh4
any other way please?
or any fix on my code to use minimum resource? (ie is that echo "" the best way ( use min resource) to do nothing
# 6  
Old 03-07-2011
OK,
change:

Code:
pgrep pooya > /dev/null

to

Code:
ps -ef | grep '[p]ooya' > /dev/null


Last edited by radoulov; 03-07-2011 at 10:55 AM..
This User Gave Thanks to radoulov For This Post:
# 7  
Old 03-07-2011
works perfect, thanks
so it must be best one for min resource
Best wishes
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Inconsistent `ps -eaf -o args | grep -i sfs_pcard_load_file.ksh | grep -v grep | wc -l`

i have this line of code that looks for the same file if it is currently running and returns the count. `ps -eaf -o args | grep -i sfs_pcard_load_file.ksh | grep -v grep | wc -l` basically it is assigned to a variable ISRUNNING=`ps -eaf -o args | grep -i sfs_pcard_load_file.ksh |... (6 Replies)
Discussion started by: wtolentino
6 Replies

2. UNIX for Dummies Questions & Answers

Piping grep into awk, read the next line using grep

Hi, I have a number of files containing the information below. """"" Fundallinfo 6.3950 14.9715 14.0482 """"" I would like to grep for Fundallinfo and use it to read the next line? I ideally would like to read the three numbers that follow in the next line and... (2 Replies)
Discussion started by: Paul Moghadam
2 Replies

3. Shell Programming and Scripting

grep log lines logged in 10 min

A log files has lines (1 line per each log for a majority; a few for 2 lines per each log) May 31 14:00:11 rtprodapp1 local2:notice sudo: jdoe : TTY=pts/0 ; PWD=/home/jdoe ; USER=root ; COMMAND=/usr/bin/su - May 31 14:03:19 rtprodapp1 local2:notice sudo: jdoe : TTY=pts/0 ; PWD=/home/jdoe ;... (4 Replies)
Discussion started by: Daniel Gate
4 Replies

4. UNIX for Dummies Questions & Answers

Bash - CLI - grep - Passing result to grep through pipe

Hello. I want to get all modules which are loaded and which name are exactly 2 characters long and not more than 2 characters and begin with "nv" lsmod | (e)grep '^nv???????????? I want to get all modules which are loaded and which name begin with "nv" and are 2 to 7 characters long ... (1 Reply)
Discussion started by: jcdole
1 Replies

5. Shell Programming and Scripting

AWK/GREP: grep only lines starting with integer

I have an input file 12.4 1.72849432773174e+01 -7.74784188610632e+01 12.5 9.59432114416327e-01 -7.87018212757537e+01 15.6 5.20139995965960e-01 -5.61612429666624e+01 29.3 3.76696387248366e+00 -7.42896194101892e+01 32.1 1.86899877018077e+01 -7.56508762501408e+01 35 6.98857157014640e+00... (2 Replies)
Discussion started by: chrisjorg
2 Replies

6. Shell Programming and Scripting

grep for last 15 min of log

I need help trying to grep for a error in log file for only last 15 min. example under /var/adm/messages i need to grep for "error 102" but only if it occured in last 15 mins? Thanks (7 Replies)
Discussion started by: shehzad_m
7 Replies

7. Shell Programming and Scripting

grep for certain files using a file as input to grep and then move

Hi All, I need to grep few files which has words like the below in the file name , which i want to put it in a file and and grep for the files which contain these names and move it to a new directory , full file name -C20091210.1000-20091210.1100_SMGBSC3:1000... (2 Replies)
Discussion started by: anita07
2 Replies

8. UNIX for Dummies Questions & Answers

| help | unix | grep (GNU grep) 2.5.1 | advanced regex syntax

Hello, I'm working on unix with grep (GNU grep) 2.5.1. I'm going through some of the newer regex syntax using Regular Expression Reference - Advanced Syntax a guide. ls -aLl /bin | grep "\(x\)" Which works, just highlights 'x' where ever, when ever. I'm trying to to get (?:) to work but... (4 Replies)
Discussion started by: MykC
4 Replies

9. UNIX for Dummies Questions & Answers

| help | unix | grep - Can I use grep to return a string with exactly n matches?

Hello, I looking to use grep to return a string with exactly n matches. I'm building off this: ls -aLl /bin | grep '^.\{9\}x' | tr -s ' ' -rwxr-xr-x 1 root root 632816 Nov 25 2008 vi -rwxr-xr-x 1 root root 632816 Nov 25 2008 view -rwxr-xr-x 1 root root 16008 May 25 2008... (7 Replies)
Discussion started by: MykC
7 Replies

10. Shell Programming and Scripting

MEM=`ps v $PPID| grep -i db2 | grep -v grep| awk '{ if ( $7 ~ " " ) { print 0 } else

Hi Guys, I need to set the value of $7 to zero in case $7 is NULL. I've tried the below command but doesn't work. Any ideas. thanks guys. MEM=`ps v $PPID| grep -i db2 | grep -v grep| awk '{ if ( $7 ~ " " ) { print 0 } else { print $7}}' ` Harby. (4 Replies)
Discussion started by: hariza
4 Replies
Login or Register to Ask a Question