06-09-2006
background process return code
Hi
I have the following piece of code that is calling another child process archive.ksh in the background
while read file;
do
file_name=`ls $file`;
ksh archive.ksh $file_name &;
done < $indirect_file
The problem is, indirect_file may contain anwhere from 2 to 20 different filenames and archive.ksh takes only one file name at a time (that is a limitation). So based on the number of files in indirect_file, i shall run those many background processes for archive.ksh.
I need to check for the completion of all archive.ksh jobs that i fired in the background and only if all the bg jobs are successful, i need to make this process pass otherwise I abort it.
I found that there is a wait command that will wait for bg jobs to finish..Can I use it? if yes, how do i overcome following prob :
1. How do I specify the job id or pid to wait command when I dont know it beforehand?
2. I have heard that there is a restriction on the number of jobs you can fire? What is the number?
Any ideas??
Thanks
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
two programs A and B writting in c++
I am using A to B and I want to know the return code of B.
in B
------------------------
int main()
{
return 11;
}
------------------------
in A
------------------------
int main()
{
system(A);
}
------------------------
Is it the right way... (1 Reply)
Discussion started by: filedeliver
1 Replies
2. Programming
two programs A and B writting in c++
I am using A to B and I want to know the return code of B.
in B
------------------------
int main()
{
return 11;
}
------------------------
in A
------------------------
int main()
{
system(A);
}
------------------------
Is it the right way... (1 Reply)
Discussion started by: filedeliver
1 Replies
3. Shell Programming and Scripting
Hello All,
I am a newbie in Shell script programming, and maybe you can help me with my query.
I need to write a shell script (mntServer.ksh) that will start a background process and also to be able to run another script.
The mntServer.ksh script contains:
#!/bin/ksh... (1 Reply)
Discussion started by: racbern
1 Replies
4. Shell Programming and Scripting
Hi,
I have a process that I run in the background that looks like this
${BASEDIR}/ksh/sqler.ksh ${compnames003} &
and I would like to get the return code of the sqler.ksh script.
so my code is like this
${BASEDIR}/ksh/sqler.ksh ${compnames003} &
retcode=$? (3 Replies)
Discussion started by: c19h28O2
3 Replies
5. Shell Programming and Scripting
Hi,
I have a unix shell script which is launching multiple java processes by calling a java class in a loop, but each time with a different set of parameters.
Now I have to use the return code from each process in the script later.
but how do i obtain the return code from each process... (1 Reply)
Discussion started by: rama354
1 Replies
6. Shell Programming and Scripting
Hey all,
Okay, this one is tricky and I'm not sure there is a niec way to do it, or indeed anyway to do it. The main issue revolves around timing out a hung ssh. I am doing this by creating a wrapper script for the ssh with the following requirements.
My requirements are:
Defineable... (5 Replies)
Discussion started by: RECrerar
5 Replies
7. Shell Programming and Scripting
Hi all, i hava a specific backgroud process. I have de PID of this process. At some time, the process finish his job, is there any way to catch the exit code? I use "echo $?" normally for commands.
Thanks! (2 Replies)
Discussion started by: Xedrox
2 Replies
8. Shell Programming and Scripting
Hi All,
I was out not working on unix from quite sometime and came back recently. I would really appreciate a help on one of the issue I am facing....
I am trying to kick off the CodeNameProcess.sh in PARALLEL for all the available codes. The script runs fine in parallel.
Let say there are... (1 Reply)
Discussion started by: rkumar28
1 Replies
9. Shell Programming and Scripting
Hi,
I have created a function f1 defined in script A.sh .I have called this function in background . But I want to use its return value for another function f2 in script A.sh.
I tried declaring it as a global variable, yet it always returns the status as 0. Is there any way with which I can get... (7 Replies)
Discussion started by: ashima jain
7 Replies
10. Shell Programming and Scripting
Hi Team,
i am executing 3 scripts in background from 1 script and i want to send a message once the script gets completed.these scripts usually takes 1 hr to complete.
My sample script is below,
Vi abc.sh
sh /opt/data/Split_1.sh &
sh /opt/data/Split_2.sh &
sh /opt/data/Split_3.sh &
... (3 Replies)
Discussion started by: raju2016
3 Replies
bg(1) General Commands Manual bg(1)
NAME
bg - Runs jobs in the background
SYNOPSIS
bg [job_id...]
Note
The C shell has a built-in version of the bg command. If you are using the C shell, and want to guarantee that you are using the command
described here, you must specify the full path /usr/bin/bg. See the csh(1) reference page for a description of the built-in command.
STANDARDS
Interfaces documented on this reference page conform to industry standards as follows:
bg: XCU5.0
Refer to the standards(5) reference page for more information about industry standards and associated tags.
OPTIONS
None
OPERANDS
Specifies the job to be resumed as a background job. If no job_id operand is given, the most recently suspended job is used. The format of
job_id is described in the Jobs section of the ksh(1) reference page.
DESCRIPTION
If job control is enabled (see the description of set -m in the ksh(1) reference page), the bg utility resumes suspended jobs from the cur-
rent environment by running them as background jobs. If the job specified by job_id is a job already running in the background, the bg
utility has no effect and will exit successfully.
Using bg to place a job into the background causes its process ID to become "known in the current shell execution environment", as if it
had been started as an asynchronous list. See the Jobs section of the ksh(1) reference page.
RESTRICTIONS
If job control is disabled, the bg utility exits with an error and no job is placed in the background. The bg utility does not work as
expected when it is operating in its own utility execution environment because that environment has no suspended jobs.
EXIT STATUS
The following exit values are returned: Successful completion. An error occurred.
ENVIRONMENT VARIABLES
The following environment variables affect the execution of bg: Provides a default value for the internationalization variables that are
unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization vari-
ables contain an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non-empty string value,
overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes
of text data as characters (for example, single-byte as opposed to multibyte characters in arguments). Determines the locale used to
affect the format and contents of diagnostic messages written to standard error. Determines the location of message catalogues for the
processing of LC_MESSAGES.
SEE ALSO
Commands: csh(1), fg(1), jobs(1), kill(1), ksh(1), Bourne shell sh(1b), POSIX shell sh(1p), wait(1)
Standards: standards(5)
bg(1)