04-27-2009
background processing in BASH
I have script 3 scripts 1 parent (p1) and 2 children child1 and child2
I have script 3 scripts
1 parent
2 children
child1
child2
In the code below the 2 child processes fire almost Instantaneously in
the background, Is that possible to know the status of pass/fail of each
process "as it happens" ?
In the present scenario although Child2 failed first ( exit 1 ) the status is not displayed until Child1 is complete.
I would really apprecitate your help.
Mother Process:
--------------------------------------
#!/bin/bash
echo -e " Parent continued process 1"
echo -e " Parent continued process 2"
echo -e " ** Kicking off a child process C1** "
./child1 &
t1=$!
echo -e " Parent continued process 3"
echo -e " Parent continued process 4"
echo -e " ** Kicking off a child process C2** "
./child2 &
t2=$!
wait $t1
if [ $? -ne 0 ]
then
echo " Child Process C1 failed !!! "
fi
wait $t2
if [ $? -ne 0 ]
then
echo " Child Process C2 failed !!! "
fi
exit 0
-------------------------------------
Child1
------
#!/bin/bash
echo -e " in child process 1 "
sleep 2
echo -e " in child process 2 "
sleep 2
echo -e " in child process 3 "
sleep 7
exit 0 # success
Child2
------
#!/bin/bash
echo -e " in child process 4"
echo -e " in child process 5"
echo -e " in child process 6"
exit 1 # failed
Thanks,
SSR.
10 More Discussions You Might Find Interesting
1. Solaris
nohup /bin/bassh $HOME/scripts/test.sh > $HOME/log/test.log 2>&1 &
nohup $HOME/scripts/test.sh > $HOME/log/test.log 2>&1 &
Which is the good practice to run a script in background of above two ?
does the first one will have any overhead on the system ?
our system is SunOS 5.10... (2 Replies)
Discussion started by: mmasals
2 Replies
2. Linux
I have script 3 scripts
1 parent
2 children
child1
child2
In the code below the 2 child processes fire almost Instantaneously in the background, Is that possible to know the status of pass/fail of each process "as it happens" ?
In the present scenario although Child2... (5 Replies)
Discussion started by: jville
5 Replies
3. Shell Programming and Scripting
Running centos 2.6, I have a bash script in which I'd like to run a number of background threads in parallel, tee'ing the results of the entire script to one file, while tee'ing the result of each background thread to another.
Here's what I'm doing, where the number of csv files control the... (1 Reply)
Discussion started by: heatlamp
1 Replies
4. Programming
So I made my own unix shell, but i want to make a background process when using the & appended to the end, so far most of the commands seem to work (except cd, but thats another story)
right now here is what I have got.
Im thinking maybe I shouldn't be using switch and maybe switch it to... (27 Replies)
Discussion started by: Mercfh
27 Replies
5. Shell Programming and Scripting
I am trying to use a loop to start tasks 0-3, running 0,1,2 in the background with &.
FOLDSET=( 0 1 2 3 )
for FOLDSET in ${FOLDSET}
do
if ; then
BACKGRD="&"
else
BACKGRD=""
fi
# start task $FOLDSET
task1 -nogui -ni -p $PROJ \
epochs=$EPOS ... (3 Replies)
Discussion started by: LMHmedchem
3 Replies
6. Shell Programming and Scripting
NOTE: I am using BASH and Solaris 10 for this.
Currently in the process of building a script that has a main "watcher" daemon that reads a configuration file and starts background processes based on it's global configuration. It is basically an infinite loop of configuration reading. Some of the... (4 Replies)
Discussion started by: dcarrion87
4 Replies
7. Shell Programming and Scripting
I'm having trouble with part of this bash script in Linux where I respawn a new instance of script and kill the old one to prevent forking (Yes, I know 'exec' will not fork but this needs to be interactive) When the old instance is kill it pops up "Terminated!" in the middle of the new instance... (7 Replies)
Discussion started by: Azrael
7 Replies
8. Shell Programming and Scripting
Hi
Say I am interested in processing a big data set over shell, and each process individually takes a long time, but many such processes can be pipe-lined, is there a way to do this automatically or efficiently in shell?
For example consider pinging a list addresses upto 5 times each. Of... (5 Replies)
Discussion started by: jamie_123
5 Replies
9. Shell Programming and Scripting
I'm completely brand new to bash scripting (migrating from Windows batch file scripting). I'm currently trying to write a bash script that will automatically reset "error-disabled" Cisco switch ports. Please forgive the very crude and inefficient script I have so far (shown below). It is... (10 Replies)
Discussion started by: MKANET
10 Replies
10. Shell Programming and Scripting
Hello! I have got a homework. The bash script runs in the background and checks the user's mailbox and when the user gets a new mail a popup window appears with some text and information about the sender (from who and when).I have no idea how to start, any help would be appreciated! Thank you:) (1 Reply)
Discussion started by: capo2ndfret
1 Replies
LEARN ABOUT OSF1
xmdropsitequerystackingorder
XmDropSiteQueryStackingOrder(3X) XmDropSiteQueryStackingOrder(3X)
NAME
XmDropSiteQueryStackingOrder - A Drag and Drop function that returns the parent, a list of children, and the number of children for a spec-
ified widget
SYNOPSIS
#include <Xm/DragDrop.h>
Status XmDropSiteQueryStackingOrder (widget, parent_return, child_returns, num_child_returns)
Widget widget;
Widget *parent_return;
Widget **child_returns;
Cardinal *num_child_returns;
DESCRIPTION
XmDropSiteQueryStackingOrder obtains the parent, a list of children registered as drop sites, and the number of children registered as drop
sites for a given widget. The children are listed in current stacking order, from bottom-most (first child) to the top-most (last child).
This function allocates memory for the returned data that must be freed by calling XtFree. Specifies the widget ID. For this widget, you
obtain the list of its children, its parent, and the number of children. Returns the widget ID of the drop site parent of the specified
widget. Returns a pointer to the list of drop site children associated with the specified widget. Returns the number of drop site chil-
dren for the specified widget.
For a complete definition of DropSite and its associated resources, see XmDropSite(3X).
RETURN VALUE
Returns zero if the routine fails; returns a nonzero value if it succeeds.
SEE ALSO
XmDropSite(3X), XmDropSiteConfigureStackingOrder(3X)
XmDropSiteQueryStackingOrder(3X)