10-11-2005
retrieving exit status from background processes
Hi,
I need to retrieve the exit status of 4 moves running as background processes. The wait command will not work since it can only give me the exit status of the last of the background processes.
Here's a sample of what I need
!#/bin/ksh
mv /dir1/subdir1/*.Z /dir6/subdir6/ &
mv /dir2/subdir2/*.Z /dir7/subdir7/ &
mv /dir3/subdir3/*.Z /dir8/subdir8/ &
mv /dir4/subdir4/*.Z /dir9/subdir9/ &
wait
I want the exit status of each and every one of my moves listed above.
Thanks...
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
How do you capture the return code from a background process?
I am dumping data to a fifo and then processing it in a c program.
I need to know that the sql finished successfully to ensure no missing data. Thanks.
ex.
sqlplus user/password < get_data.sql > data_fifo.txt &
bin/process_data... (2 Replies)
Discussion started by: korndog
2 Replies
2. Shell Programming and Scripting
I have a sript which is going to trigger other 3 scripts in background simultaneously
for eg:
Main Script:(main.sh)
-----------
sh a.sh &
sh b.sh &
sh c.sh &
How to catch the exit status and store it in a variable for all those three scripts in main script. Is there any other way of... (4 Replies)
Discussion started by: Omkumar
4 Replies
3. Shell Programming and Scripting
i need to execute 5 jobs at a time in background and need to get the exit status of all the jobs i wrote small script below , i'm not sure this is right way to do it.any ideas please help.
$cat run_job.ksh
#!/usr/bin/ksh
####################################
typeset -u SCHEMA_NAME=$1
... (1 Reply)
Discussion started by: GrepMe
1 Replies
4. Linux
Hi!
First of all, let me warn you I'm quite new to the world of LINUX and Operating Systems understanding, so that's why I pose these newbie and stupid qustions...
Anyway, I'm trying to build my own simple shell in C and I'm getting some problems in implementing the background process ('&')... (10 Replies)
Discussion started by: neimaD
10 Replies
5. SuSE
I have installed oracle 10g on suse sles9. I do not see oracle background processes.
ps -ef|grep ora_ gives me environment variables junk.
ps -ef|grep smon does not show anything however database is up and running.
Any idea how to tweak that? (1 Reply)
Discussion started by: vijayasawant
1 Replies
6. Shell Programming and Scripting
Ok guys so I have my first dummy shell almost done except for one tiny part: I do not know how to run a process in the background, from the code!
I already know how to do that in a normal shell:
$ program &
However, no clue when it comes to how to program that thing. :eek:
A very... (2 Replies)
Discussion started by: Across
2 Replies
7. Shell Programming and Scripting
Hi All,
I have a scenario where I am executing some child shell scripts in background (using &)through a master parent script.
Is there a way I can capture the exit status of each individual child script after the execution is completed. (2 Replies)
Discussion started by: paragkalra
2 Replies
8. Shell Programming and Scripting
Hello Friends,
Hope you are doing well.
I just need a help in executing multiple processes.
I've written a shell script which calls another scritps. But the problem is there are too many processes to run, and each process takes about a min to finish its execution.
So, I want to just... (3 Replies)
Discussion started by: singh.chandan18
3 Replies
9. UNIX for Dummies Questions & Answers
Hi, I can't understand why the last $? is 1? can somebody plz help me to understand it? thanks
$ ksh
$ ps -f
UID PID PPID C STIME TTY TIME COMMAND
msarabad 12361 12319 0 15:17:58 pts/1 0:00 ksh
msarabad 12319 12317 0 15:15:11 pts/1 0:00 -sh
msarabad 12362 12361 ... (7 Replies)
Discussion started by: messi777
7 Replies
10. Shell Programming and Scripting
Hi,
I have a schell script parent.ksh from which I am calling three background processes a.ksh,b.ksh and c.ksh. Once these three processes completes the next step in parent.ksh should execute. How to achieve this?
Please help me....
Thanks... (1 Reply)
Discussion started by: ravinunna
1 Replies
WAIT(2) System Calls Manual WAIT(2)
NAME
wait - wait for process to terminate
SYNOPSIS
wait(status)
int *status;
wait(0)
DESCRIPTION
Wait causes its caller to delay until a signal is received or one of its child processes terminates. If any child has died since the last
wait, return is immediate; if there are no children, return is immediate with the error bit set (resp. with a value of -1 returned). The
normal return yields the process ID of the terminated child. In the case of several children several wait calls are needed to learn of all
the deaths.
If (int)status is nonzero, the high byte of the word pointed to receives the low byte of the argument of exit when the child terminated.
The low byte receives the termination status of the process. See signal(2) for a list of termination statuses (signals); 0 status indi-
cates normal termination. A special status (0177) is returned for a stopped process which has not terminated and can be restarted. See
ptrace(2). If the 0200 bit of the termination status is set, a core image of the process was produced by the system.
If the parent process terminates without waiting on its children, the initialization process (process ID = 1) inherits the children.
SEE ALSO
exit(2), fork(2), signal(2)
DIAGNOSTICS
Returns -1 if there are no children not previously waited for.
ASSEMBLER
(wait = 7.)
sys wait
(process ID in r0)
(status in r1)
The high byte of the status is the low byte of r0 in the child at termination.
WAIT(2)