• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 270
  • Last Modified:

detecting proc-id

Hi!

I am running a process in linux or unix which I need to run only one process at a time. How can i write a script wherein the user can only execute one process at a time? If the process is already running then it will not run again until the process currently executing is completed.

Any help or comment would be very much appreciated.

Thanks.
0
marou
Asked:
marou
1 Solution
 
owensleftfootCommented:
#!/usr/bin/perl
$psaux =`ps aux`;
$result = $psaux !~ /myprocessname/;
if ($result) {
system("mycommand");
}
is sort of what you are looking for.
0
 
jlevieCommented:
You can do in the shell with:

if [ `ps -ef | grep procname | grep -v grep | wc -l` -gt 0 ]; then
  echo "Process procname is already running, sorry"
  exit 1
else
  echo "Starting  procname"
  /path-to/procname
fi
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now