10-27-2010
well...
What you are calling a child script is not really a child. The dot command makes the script run in the current shell. So when it exits, its the same as if the exit was in the "parent".
Try setting a variable instead of exiting, then test that variable back in the "parent" instead of testing RetCode.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I am trying to return a value from child script to a parent script just as a function does.
The child script will look for a file and if exists will return 1 else 0.
I need to capture the status 1 from child script in the parent script and proceed further. if 0, i need not do... (1 Reply)
Discussion started by: borncrazy
1 Replies
2. Shell Programming and Scripting
Greets all. This is using bash/sh on Slackware Linux 12....
I have a parent and MANY children scripts. The parent would be:
for script in scripts/*.sh; do
sh $script || exit 1
done
I'm trying to get a child script to quit running without bombing my parent script. This would be the... (5 Replies)
Discussion started by: madpenguin
5 Replies
3. Shell Programming and Scripting
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)
Discussion started by: sasaliasim
1 Replies
4. Shell Programming and Scripting
I have two shell scripts : A.sh and B.sh
A.sh
echo "In A"
exec B.sh
echo "After B"
B.sh
echo "In B"
The output is : In A
In B
I want the output : In A
In B
After B (4 Replies)
Discussion started by: suchismitasuchi
4 Replies
5. Shell Programming and Scripting
Hello everyone,
I'm trying to write a script, i would like to say the child kills the parent,
how would i do that? (2 Replies)
Discussion started by: jessy21
2 Replies
6. Shell Programming and Scripting
Hi everyone,
I have this problem with a script I'm writting. I want to execute a code running in the background several times through a script. I am writting it like that
parent_script
for a in 1 2 3 4 5
do
exec test -n $a
done
What I want to do is when parent_script is killed,... (0 Replies)
Discussion started by: geovas
0 Replies
7. Shell Programming and Scripting
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)
Discussion started by: nw2unx123
3 Replies
8. Shell Programming and Scripting
#!/usr/local/bin/bash
set -vx
/prod/HotelierLinks/palaceLink/bin/PalacefilesWait /prod/HotelierLinks/palaceLink/bin/prodEnvSetup 03212013 &
if
then
echo "fatal error: Palace/HardRock failed!!!!" 1>&2
echo "Palace Failed" | mail -s "Link Failed at Palace/HardRock" -c... (1 Reply)
Discussion started by: aroragaurav.84
1 Replies
9. Shell Programming and Scripting
hi,
i want to call a child shell script from a parent shell script. the child will be running for 5 mins. normally when the child is running, parent will wait till the child completes. so in the above case parent will be paused for 5 mins. is there a way so that the parents does not wait for the... (3 Replies)
Discussion started by: Little
3 Replies
10. Shell Programming and Scripting
I have requirement where I need to fail parent if any one of the child process fails. Here is the code snippet
for i in 1 2 3 4 5 6 7 8 9 10
do
child_script $i &
done
wait
I need to fail my main script if any one of my child process fails (8 Replies)
Discussion started by: gvkumar25
8 Replies
SCRIPT(1) User Commands SCRIPT(1)
NAME
script - make typescript of terminal session
SYNOPSIS
script [options] [file]
DESCRIPTION
script makes a typescript of everything displayed on your terminal. It is useful for students who need a hardcopy record of an interactive
session as proof of an assignment, as the typescript file can be printed out later with lpr(1).
If the argument file is given, script saves the dialogue in this file. If no filename is given, the dialogue is saved in the file type-
script.
OPTIONS
-a, --append
Append the output to file or to typescript, retaining the prior contents.
-c, --command command
Run the command rather than an interactive shell. This makes it easy for a script to capture the output of a program that behaves
differently when its stdout is not a tty.
-e, --return
Return the exit code of the child process. Uses the same format as bash termination on signal termination exit code is 128+n.
-f, --flush
Flush output after each write. This is nice for telecooperation: one person does `mkfifo foo; script -f foo', and another can
supervise real-time what is being done using `cat foo'.
--force
Allow the default output destination, i.e. the typescript file, to be a hard or symbolic link. The command will follow a symbolic
link.
-q, --quiet
Be quiet (do not write start and done messages to standard output).
-t[file], --timing[=file]
Output timing data to standard error, or to file when given. This data contains two fields, separated by a space. The first field
indicates how much time elapsed since the previous output. The second field indicates how many characters were output this time.
This information can be used to replay typescripts with realistic typing and output delays.
-V, --version
Display version information and exit.
-h, --help
Display help text and exit.
NOTES
The script ends when the forked shell exits (a control-D for the Bourne shell (sh(1)), and exit, logout or control-d (if ignoreeof is not
set) for the C-shell, csh(1)).
Certain interactive commands, such as vi(1), create garbage in the typescript file. script works best with commands that do not manipulate
the screen, the results are meant to emulate a hardcopy terminal.
It is not recommended to run script in non-interactive shells. The inner shell of script is always interactive, and this could lead to
unexpected results. If you use script in the shell initialization file, you have to avoid entering an infinite loop. You can use for
example the .profile file, which is read by login shells only:
if test -t 0 ; then
script
exit
fi
You should also avoid use of script in command pipes, as script can read more input than you would expect.
ENVIRONMENT
The following environment variable is utilized by script:
SHELL If the variable SHELL exists, the shell forked by script will be that shell. If SHELL is not set, the Bourne shell is assumed.
(Most shells set this variable automatically).
SEE ALSO
csh(1) (for the history mechanism), scriptreplay(1)
HISTORY
The script command appeared in 3.0BSD.
BUGS
script places everything in the log file, including linefeeds and backspaces. This is not what the naive user expects.
script is primarily designed for interactive terminal sessions. When stdin is not a terminal (for example: echo foo | script), then the
session can hang, because the interactive shell within the script session misses EOF and script has no clue when to close the session. See
the NOTES section for more information.
AVAILABILITY
The script command is part of the util-linux package and is available from Linux Kernel Archive <https://www.kernel.org/pub/linux/utils
/util-linux/>.
util-linux June 2014 SCRIPT(1)