need to check if the process is running


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting need to check if the process is running
# 1  
Old 08-18-2011
Question need to check if the process is running

Hi,

I check if the process is running or not using the below.

Code:
 /usr/ucb/ps auxww | grep 10[9]9 |grep rmi |  awk '{print $2}'
9718

Thus we see 9718 is the PID.
It return blank if the process is not running.

I need to perform some action [start the process] if the process is not running and leave it if it is already running.

Can you please help me with the syntax?
# 2  
Old 08-18-2011
Do you try "service --status-all" command?
# 3  
Old 08-18-2011
Error

Nopes I do not have root access and would want to stick to the grep i mentioned in my inaugural post.
# 4  
Old 08-18-2011
Maybe something like this, give it a try:

Code:
#!/usr/bin/ksh
/usr/ucb/ps auxww | grep 10[9]9 |grep rmi 

if [ $? -eq 0 ]
then
pid = `/usr/ucb/ps auxww | grep 10[9]9 |grep rmi| awk '{print $2}'`
echo "process $pid running, doing nothing..."
else
echo "not running..starting process"
<put the command to start process>
fi

This User Gave Thanks to dude2cool For This Post:
# 5  
Old 08-18-2011
You don't mention what OS you are running, so here's a start:

Code:
#!/bin/bash
PIDS=$(ps auxww | awk '/(10[9]9)/ || /(rmi)/ {print $2}')
for pid in $PIDS; do
	# Whatever you need to do to start your process.
done

# 6  
Old 08-18-2011
Question

Why so ?

Code:
/usr/ucb/ps auxww | grep onli[n]e0331 | grep rmi
echo $?
1
/usr/ucb/ps auxww | grep onli[n]e0331 | grep rmi | awk '{print $2}'
echo $?
0

I am expecting both of them to return 1 as the process is "Not" running.

Can anyone explain?
# 7  
Old 08-18-2011
awk doesn't know that anything's wrong, and you only get the return value of the last command.

It's traditional to have whatever runs a persistent program save its PID in a file, so you don't need to resort to ps | grep | awk | kitchen | sink tricks to find out what the PID is. This also allows systems where more than one instance of it can be run independently without interfering with each other.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Looping to check the currently running process.

Hi Gurus, t=`ps -u irb|grep -v grep|grep BSNL_PAYMENT_C` echo $t if then echo $? echo "Process Creation is Running ...." else echo "Process went down at $dat $tim" fi How would i use loop so that the script continously checks for the current status of this process.... (1 Reply)
Discussion started by: ankitknit
1 Replies

2. UNIX for Dummies Questions & Answers

How a process can check if a particular process is running on different machine?

I have process1 running on one machine and generating some log file. Now another process which can be launched on any machine wants to know if process1 is running or not and also in case it is running it wants to stream the logs file generated by process1 on terminal from which process2 is... (2 Replies)
Discussion started by: saurabhnsit2001
2 Replies

3. Programming

How do I check if a process is running in C

How to I check if a process is running in C? I'm trying to use ps aux |grep "process name" but failing in doing that. How do I do that? Thanks, (1 Reply)
Discussion started by: cprogdude
1 Replies

4. UNIX for Dummies Questions & Answers

Command to check if a particular process is running

Hi What is the best command to check if a particular process is running in a linux server or not To check any java process, I use the below command. ps -ef |grep jvm When I execute the above command, it lists me all the processess . The above command should ideally return only the... (6 Replies)
Discussion started by: vr3w3c9
6 Replies

5. UNIX and Linux Applications

How to check if process is running?

Hi I would like to check if an instance of a script is already running. I've seen many different examples, but I haven't the slightest idea as to how to do this. Can you please help. Thank you. (5 Replies)
Discussion started by: ladyAnne
5 Replies

6. Shell Programming and Scripting

Check if Process is running

Hi , I have a csh code below which check the process if it's running. Can any expert advise me on the following: 1) what does this notationmean ">!" and how is it different from the append ">" notation ? 2) how does "setenv" work in this code ? # Check whether there is a running... (3 Replies)
Discussion started by: Raynon
3 Replies

7. UNIX for Advanced & Expert Users

How to check since when (for how long) a particular process is running ?

How do I check if a particular process is running from a certain date and time ? (2 Replies)
Discussion started by: hpuxlxboy
2 Replies

8. UNIX for Advanced & Expert Users

how to check how long the process has been running.

I have a requirement to check how long a process is running on unix system.If i use ps -ef i am getting the following message guest 2453638 1998920 0 16:16:05 - 0:00 dsapi_slave 9 8 0 but this is showing only time not the date.Can any one please advice me any script to find out how... (2 Replies)
Discussion started by: ukatru
2 Replies

9. Shell Programming and Scripting

check process running

I have this script: ------------------------------------------------------- #!/bin/ksh # if ] || ] then echo "Executing main_load.sh script" /usr1/psc_load/jobs/cron/main_load.sh "ods" else echo "File not found, do nothing" fi exit 0 ... (4 Replies)
Discussion started by: rose1207
4 Replies

10. Shell Programming and Scripting

How to check if another instance of the process is running

Hi, I am writing a shell script to invoke a C++ program. Before I start the C++ program (oi7loadbalancer), I am checking if the process is already running. I start the process only if it is not already running. I have the following check in my script. proccount=`ps -f -u $USER_NAME | grep... (8 Replies)
Discussion started by: sim
8 Replies
Login or Register to Ask a Question