No problem with the redirection. This would only be a problem if you had any output from the child.sh that was getting assigned to a variable in parent.sh.
Do you have the current working directory in your path? If not, then parent.sh will not be able to execute the child.sh script, as it will not find it in the path.
You have to change the child.sh line in your code to ./child.sh.
parent.sh
Code:
#!/bin/ksh
#set -x
echo "I am in parent shell now..."
./child.sh
ret_stat=$?
echo "rest_stat=$ret_stat"
echo "I am below parent shell end..."
child.sh
Code:
#!/bin/ksh
#set -x
cho "I am in child shell now..." > test.log 2>&1
if [[ $? -ne 0 ]]
then
exit 100
fi
echo "I am in child shell end.."
I have an application on Informix 4GL, and I am invoking the shell script from the program, but I need to know if the shell script work fine or not, in order to continue the process.
I know that we can use $? to get the final status but this is on unix command. How can I return a value from the... (3 Replies)
Hi everybody,
I have a script in which I'm invoking another script which runs in a subshell.
after the script is executed I want to return to the parent shell as some variables are set. However i'm unable to return to my original shell as the script which i'm calling inside is invoked in... (5 Replies)
Hi,
I haev to devlop a script which when executed will take in a sudo privelege and run a set of commands then will go back to parent shell and execute the rest of the command
But the problem I am facing is that when the script is executed it takes the sudo privelege but it waits for the... (0 Replies)
I have the following two Korn shell scripts:
SHELL1.ksh
#!/usr/bin/ksh
nohup sas /abc/123/sasprogram1.sas &
SHELL2.ksh
#!/usr/bin/ksh
./SHELL1.ksh
wait
nohup sas /abc/123/sasprogram2.sas &
My goal is to run SHELL1.ksh within SHELL2.ksh. SHELL1.ksh runs sasprogram1.sas. I would like... (1 Reply)
1. The problem statement, all variables and given/known data:
I need to make an program that in a loop creates one parent and five children with fork(). The problem i'm trying to solve is how to delete the parent and child of the childīs process.
2. Relevant commands, code, scripts,... (0 Replies)
Hi everyone
i am very new to linux , working on bash shell.
I am trying to solve the given problem
1. Create a process and then create children using fork
2. Check the Status of the application for successful running.
3. Kill all the process(threads) except parent and first child... (2 Replies)
Hi All,
I have a parent shell script A and a child shell script B.
1). If a command i.e a mysqdump fails in shell script B fails then I trap the error with this code
if ]
then func_exit "Failed to export the cleaned DB1.${MYDBNAME} database to the ${MYARCHIVEDIR} directory"... (1 Reply)
Hello everyone.
I'm pretty new to the topic of fork(), pipe() etc. All day I've been trying to make my code execute but it doesn't seem to be working the way I understand it. :wall:
Anyway, my task is:
Create a child process that will recive from its parent two intiger values. Than it will... (5 Replies)
I am having a parent scripts which reads a file with child scripts name.
I need to read one by one child script , execute it and
1. If child script fails send mail to the team with the log file
2. If the child script executes fine then proceed with the next child script execution.
#!... (3 Replies)
Hi
I have a code as the following
#!/usr/bin/ksh
set -x
row()
{
a=$1
b=$2
c=$(($a + $b))
d=$(($a * $b))
echo $a $b
}
e=`row 2 3`
set $e
echo "The value of c is $c"
echo "The value of d is $d"
My requirement is I need to pass two arguments to a function and return two values... (5 Replies)
Discussion started by: Priya Amaresh
5 Replies
LEARN ABOUT REDHAT
pthread_atfork
PTHREAD_ATFORK(3) Library Functions Manual PTHREAD_ATFORK(3)NAME
pthread_atfork - register handlers to be called at fork(2) time
SYNOPSIS
#include <pthread.h>
int pthread_atfork(void (*prepare)(void), void (*parent)(void), void (*child)(void));
DESCRIPTION
pthread_atfork registers handler functions to be called just before and just after a new process is created with fork(2). The prepare han-
dler will be called from the parent process, just before the new process is created. The parent handler will be called from the parent
process, just before fork(2) returns. The child handler will be called from the child process, just before fork(2) returns.
One or several of the three handlers prepare, parent and child can be given as NULL, meaning that no handler needs to be called at the cor-
responding point.
pthread_atfork can be called several times to install several sets of handlers. At fork(2) time, the prepare handlers are called in LIFO
order (last added with pthread_atfork, first called before fork), while the parent and child handlers are called in FIFO order (first
added, first called).
To understand the purpose of pthread_atfork, recall that fork(2) duplicates the whole memory space, including mutexes in their current
locking state, but only the calling thread: other threads are not running in the child process. The mutexes are not usable after the fork
and must be initialized with pthread_mutex_init in the child process. This is a limitation of the current implementation and might or
might not be present in future versions.
RETURN VALUE
pthread_atfork returns 0 on success and a non-zero error code on error.
ERRORS
ENOMEM insufficient memory available to register the handlers.
AUTHOR
Xavier Leroy <Xavier.Leroy@inria.fr>
SEE ALSO fork(2), pthread_mutex_lock(3), pthread_mutex_unlock(3).
LinuxThreads PTHREAD_ATFORK(3)