Sponsored Content
Top Forums Shell Programming and Scripting checking for a running process from korn cron Post 70544 by blowtorch on Sunday 1st of May 2005 12:27:20 AM
Old 05-01-2005
Best way to implement this is to use a lock file. When the process starts up, have it look for a lock file (which should be a unique file name). If the file exists, the process can just exit. Otherwise, the process can touch the file and proceed to do its job. Just before exiting the process will remove the file.

Code:
#!/bin/sh
LOCKFILE=/tmp/lockfile # just suppose some name
if [ -f $LOCKFILE ]; then
exit
fi
touch $LOCKFILE  # create your lockfile so that any process starting up after 
                        # will find the file and exit
### start doing what you really want to do here
.
.
.
### end what ever you are doing here
rm -f $LOCKFILE
exit

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Korn Shell script not running

I am sorry, this is really trivial, yet I am not able to understand what the problem is! I am using korn shell and running this script #!/bin/ksh keep=3 while ; do echo $keep keep=$(($keep-1)) done I am getting this error: `keep=$' unexpected I am not able to understand it because ... (1 Reply)
Discussion started by: Asty
1 Replies

2. Shell Programming and Scripting

Shell running setup in Korn ?

I am starting to code a few ideas of customization and tasks improvements on the office UNIX machine. My first script (see below) only contains ALIAS commands. But for some reason, when I execute it, the alias are not executed. I suspect it is because of the "#!/bin/ksh" not being recognized or... (4 Replies)
Discussion started by: Browser_ice
4 Replies

3. UNIX for Dummies Questions & Answers

perl scripting for checking if a process is running

Hi All, I am new to perl and have been trying to write a short script to check a process.Though i havent reached to the stage where i can match the output. I am trying to pass a variable x with value /opt/RGw/csbp-base/CSBP_BAT.01.00.05/csbp_BAT.01.00.05.jar and then pass another variable... (2 Replies)
Discussion started by: pistachio
2 Replies

4. Shell Programming and Scripting

Checking the cron process in unix

Hi Experts, Is there any command by which i can chk that the cron process is running fine? Say i have scheduled the cron to run at 10 o clock every monday,Do i need to wait for the time it runs and then chk using ps -ef? Please shed some light. Thanks Ashok. (2 Replies)
Discussion started by: Ashok_oct22
2 Replies

5. UNIX for Dummies Questions & Answers

running script with korn shell

How would i instruct the current shell to run the current script using the korn shell? (1 Reply)
Discussion started by: JamieMurry
1 Replies

6. UNIX for Dummies Questions & Answers

Checking Unix Performance - Why is a process running slowly?

Hi Please can someone explain to me how they would go about monitoring the performance of a process in Unix. Lets say that a user is running a process in Unix but it seems to be taking a long time, whereas it completed a lot quicker yesterday. How would you go about investigating what is causing... (1 Reply)
Discussion started by: Sunny Sid
1 Replies

7. Shell Programming and Scripting

Running Shell Script in the cron, background process

Hi, i was looking for an answer for some trouble im having runing a script in the cron, thing is, that when i run it manually it works just fine. But when cron runs it, it just doenst work. I saw a reply on a similar subject, suggesting that the . .profile worked for you, but im kind of... (9 Replies)
Discussion started by: blacksteel1988
9 Replies

8. Solaris

Cron job running even after cron is removed

Hi , I have removed a cron for particular user , but cron job seems to be running even after the cron entry is removed. The purpose of the cron was to sendmail to user ( it uses mailx utility ) I have restarted cron and sendmail service still user is getting mail alerts from the cron job. And... (4 Replies)
Discussion started by: chidori
4 Replies

9. Shell Programming and Scripting

Issue Running UNIX process from CRON !!

Experts, Not sure whether the problem described here is related with Unix or is it with Oracle Installation. Here is the description of the issue: A new Unix server is setup as a part of Unix and Oracle upgradation activity for one of the Application, I work on. One strange thing is... (2 Replies)
Discussion started by: Oracle_User
2 Replies

10. Shell Programming and Scripting

Checking running process status using "grep" on multiple servers in load sharing system.

Suppose i have 3 different servers say x,y and z. Im running some process say ABC and 40 instances for the same is being created. In load sharing suppose on server x, 20 instances are running server y, 10 instances are running server z, 10 instances are running. While checking the... (1 Reply)
Discussion started by: ankitknit
1 Replies
lockfile-progs(1)						 Lockfile programs						 lockfile-progs(1)

NAME
lockfile-progs - command-line programs to safely lock and unlock files and mailboxes (via liblockfile). SYNOPSIS
mail-lock [--use-pid] [--retry retry-count] mail-unlock mail-touchlock [--oneshot] lockfile-create [--use-pid] [--retry retry-count] [--lock-name] filename lockfile-remove [--lock-name] filename lockfile-touch [--oneshot] [--lock-name] filename lockfile-check [--use-pid] [--lock-name] filename DESCRIPTION
Lockfile-progs provides a set a programs that can be used to lock and unlock mailboxes and files safely (via liblockfile): mail-lock - lock the current user's mailbox mail-unlock - unlock the current user's mailbox mail-touchlock - touch the lock on the current user's mailbox lockfile-create - lock a given file lockfile-remove - remove the lock on a given file lockfile-touch - touch the lock on a given file lockfile-check - check the lock on a given file By default, the filename argument refers to the name of the file to be locked, and the name of the lockfile will be filename .lock. How- ever, if the --lock-name argument is specified, then filename will be taken as the name of the lockfile itself. Each of the mail locking commands attempts to lock /var/spool/mail/<user>, where <user> is the name associated with the effective user ID, as determined by via geteuid(2). Once a file is locked, the lock must be touched at least once every five minutes or the lock will be considered stale, and subsequent lock attempts will succeed. Also see the --use-pid option and the lockfile_create(3) manpage. The lockfile-check command tests whether or not a valid lock already exists. OPTIONS
-q, --quiet Suppress any output. Success or failure will only be indicated by the exit status. -v, --verbose Enable diagnostic output. -l, --lock-name Do not append .lock to the filename. This option applies to lockfile-create, lockfile-remove, lockfile-touch, or lockfile-check. -p, --use-pid Write the current process id (PID) to the lockfile whenever a lockfile is created, and use that pid when checking a lock's validity. See the lockfile_create(3) manpage for more information. This option applies to lockfile-create, lockfile-remove, lockfile-touch, and lockfile-check. -o, --oneshot Touch the lock and exit immediately. This option applies to lockfile-touch and mail-touchlock. When not provided, these commands will run forever, touching the lock once every minute until killed. -r retry-count, --retry retry-count Try to lock filename retry-count times before giving up. Each attempt will be delayed a bit longer than the last (in 5 second incre- ments) until reaching a maximum delay of one minute between retries. If retry-count is unspecified, the default is 9 which will give up after 180 seconds (3 minutes) if all 9 lock attempts fail. EXAMPLES
Locking a file during a lengthy process: lockfile-create /some/file lockfile-touch /some/file & # Save the PID of the lockfile-touch process BADGER="$!" do-something-important-with /some/file kill "${BADGER}" lockfile-remove /some/file EXIT STATUS
0 For lockfile-check this indicates that a valid lock exists, otherwise it just indicates successful program execution. Not 0 For lockfile-check a non-zero exit status indicates that the specified lock does not exist or is not valid. For other programs it indicates that some problem was encountered. SEE ALSO
maillock(3) touchlock(3) mailunlock(3) lockfile_create(3) lockfile_remove(3) lockfile_touch(3) lockfile_check(3) AUTHOR
Written by Rob Browning <rlb@defaultvalue.org> 0.1.12 2008-02-10 lockfile-progs(1)
All times are GMT -4. The time now is 03:36 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy