Sponsored Content
Top Forums Shell Programming and Scripting error situation handling when starting app from a script Post 302698177 by bakunin on Saturday 8th of September 2012 06:07:36 PM
Old 09-08-2012
When you send a process in the background you can use the "jobs" command to get its PID. Using this PID you can terminate it by sending signal 15 (or, if this doesn't help, 9).

The display format of "jobs" might differ slightly from OS to OS, so you will have to fine-tune the following sketch to work on yours. I have not tested it yet, so you might have to adapt it a bit too:

Code:
....

controljob ()
{
typeset    chJob="$1"           # some command line
typeset -i iTimeOut=$2          # time to wait in seconds
typeset -i iPID=0
typeset -i iCnt=0

$chJob &
iPID=$(jobs | sed, awk, ...)    # whatever is necessary for your system

while [ $iCnt -lt $iTimeOut -a $(ps -p $iPID | wc -l) -gt 0 ] ; do
     sleep 1
     (( iCnt += 1 ))
done

if [ $(ps -p $iPID | wc -l) -gt 0 ] ; then
     kill -15 $iPID
     sleep 3                    # the process may need some time to terminate
fi

if [ $(ps -p $iPID | wc -l) -gt 0 ] ; then
     kill -9 $iPID
     exit 1
fi

exit 0
}

Moderator's Comments:
Mod Comment finally i'd like to ask you not to ignore requests by the moderators again. zaxxon has asked you to use CODE-tags and in your next post you didn't use them again. Thank you for your consideration.


I hope this helps.

bakunin

Last edited by bakunin; 09-08-2012 at 07:13 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

how to capture my app starting up.

This is the script for the cold backup that we get from mycat every time it goes down and up again. It's a huge email that we get and all within the body. Here is the dilemma; I would like to capture just the “”successful start up of the luminis app.”” I don't know if I need to do an “if... (1 Reply)
Discussion started by: parente
1 Replies

2. HP-UX

help auto starting app on boot

Hi I need a bit of help figuring out how to auto start an application on boot on an HPUX. I am a fairly exp AIX guy now working an HP shop. I use to change a /etc/rc... file. Any advise would be a great help TIA. –K If it is a help the program is a DB and runs as root /usr/ud{##}/startud... (3 Replies)
Discussion started by: KmJohnson
3 Replies

3. Shell Programming and Scripting

Issue with Error handling,not able to continue the script further

Hi, I am trying to write a script to cleanup files in a log directory .. cd log find Datk** -mtime +7 -exec rm -f {} \; 2> /dev/null Have used the above to clean up files in log directory more then 7 days older. The file can be something like ( auto-generate by some processes and... (2 Replies)
Discussion started by: nss280
2 Replies

4. Shell Programming and Scripting

Help with Error Handling on Script

Hi, I need your guys help again. I run a script which check for some process status in a loop. when i check the process some of the process could throw an error, how can i check that inside my script. Thanks, RR (3 Replies)
Discussion started by: rrb2009
3 Replies

5. Shell Programming and Scripting

Calling a Perl script in a Bash script -Odd Situation

I am creating a startup script for an application. This application's startup script is in bash. It will also need to call a perl script (which I will not be able to modify) for the application environment prior to calling the application. The problem is that this perl script creates a new shell... (5 Replies)
Discussion started by: leepet01
5 Replies

6. Shell Programming and Scripting

Expect Script Error Handling

Good Day Everyone, I was hoping to get a little insight into an expect script that I've written. Basically we have this expect script to perform an sftp upload, key authentication is not an option, and sftp is the only method supported by our vendor, thus the need for this. I want to be... (3 Replies)
Discussion started by: thaller
3 Replies

7. Shell Programming and Scripting

Help me add Error Handling to my script

Hi all, I have some sections of a script that I am trying to add error handling to. Basically if it returns any error, just continue. This is for a deployment script that i am writing to assist in the deployment of scripts out to other systems. At the top of my KSH script i added this... (5 Replies)
Discussion started by: nitrobass24
5 Replies

8. Shell Programming and Scripting

Error handling

Hello fellow UNIX gurus :) I have a problem regarding the script below: # Variables used in this shell. power=0 # Stores squared integer total=0 # Sum of all squared integers num=0 # Stores command line arguements # Provides error handling if command line... (5 Replies)
Discussion started by: Learn4Life
5 Replies

9. Shell Programming and Scripting

Script FTP maintain error handling

Hi, I have ftp script like below How to insert an error handling, If the transfer failed then send mail to me. Actually, I just need the script to send an email if the FTP failed. How to put the email script within FTP script? Thank You Edy (5 Replies)
Discussion started by: edydsuranta
5 Replies

10. Programming

Wuhan Coronavirus Status App for China - Rapid Prototype using MQTT and the IoT OnOff IOS App

With a little bit of work, was able to build a nice "Wuhan Coronavirus Status" app using MQTT and the IoT-OnOff app. More on this technique here: ESP32 (ESP-WROOM-32) as an MQTT Client Subscribed to Linux Server Load Average Messages The result turned out nice, I think. I like the look and... (10 Replies)
Discussion started by: Neo
10 Replies
queuedefs(4)							   File Formats 						      queuedefs(4)

NAME
queuedefs - queue description file for at, batch, and cron SYNOPSIS
/etc/cron.d/queuedefs DESCRIPTION
The queuedefs file describes the characteristics of the queues managed by cron(1M). Each non-comment line in this file describes one queue. The format of the lines are as follows: q.[njobj][nicen][nwaitw] The fields in this line are: q The name of the queue. a is the default queue for jobs started by at(1); b is the default queue for jobs started by batch (see at(1)); c is the default queue for jobs run from a crontab(1) file. njob The maximum number of jobs that can be run simultaneously in that queue; if more than njob jobs are ready to run, only the first njob jobs will be run, and the others will be run as jobs that are currently running terminate. The default value is 100. nice The nice(1) value to give to all jobs in that queue that are not run with a user ID of super-user. The default value is 2. nwait The number of seconds to wait before rescheduling a job that was deferred because more than njob jobs were running in that job's queue, or because the system-wide limit of jobs executing has been reached. The default value is 60. Lines beginning with # are comments, and are ignored. EXAMPLES
Example 1 A sample file. # # a.4j1n b.2j2n90w This file specifies that the a queue, for at jobs, can have up to 4 jobs running simultaneously; those jobs will be run with a nice value of 1. As no nwait value was given, if a job cannot be run because too many other jobs are running cron will wait 60 seconds before trying again to run it. The b queue, for batch(1) jobs, can have up to 2 jobs running simultaneously; those jobs will be run with a nice(1) value of 2. If a job cannot be run because too many other jobs are running, cron(1M) will wait 90 seconds before trying again to run it. All other queues can have up to 100 jobs running simultaneously; they will be run with a nice value of 2, and if a job cannot be run because too many other jobs are running cron will wait 60 seconds before trying again to run it. FILES
/etc/cron.d/queuedefs queue description file for at, batch, and cron. SEE ALSO
at(1), crontab(1), nice(1), cron(1M) SunOS 5.11 1 Mar 1994 queuedefs(4)
All times are GMT -4. The time now is 09:04 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy