You could have different scripts for the two tasks and run one (or both) in background. You will still have to use some sort of inter-process-communication to make sure the one starts only when the second is past a certain point of execution. The following (pseudo-code-) sketch would layout this:
Code:
Master-script:
rm /some/file # make sure there is no leftover from previous runs
first_script &
while [ ! -e /some/file ] ; do
sleep some time
done
second_script
first_script:
long_command # commands to be executed before second_script starts
touch /some/file
other_commands # commands to be executed after second_script is started
This would first start "first_script" and then wait until "/some/file" is created, upon which it starts "second_script". "first_script" would signal being past a certain point by creating the file "/some/file", upon which "second_script" would be started by "master".
Another option would be to use Korn shell ("ksh") and make use of its "coprocess facility". I suggest you read the man page for "ksh" on how to use it.
hi ,
i need to run a parallel program .
for example;
program1
{
array=" the second program should called here : program 2"
the execution should continue
}
the 2nd program should recieve an array of information as argument and it should... (4 Replies)
Hi,
Iam having the scripts as follows. i jus want to run those in parallel.
main aim is to minimise the time for overall execution of the script.
now out.txt is having 1 lac records.
script1(split.sh)
split -1000 out.txt splitout
ls -A splitout* > filelist.txt
cat filelist.txt... (6 Replies)
I'm going to undertake a hardware refresh soon and I was wondering if it is possible to run two machines (X and Y) with the same hostname (but different IP addresses) on the same network? Server X is the original server and has an entry in DNS. Server Y is the new server and won't have an entry... (1 Reply)
Hi All,
I have 3 shell scripts, Script1,Script2 and Script3. Now I want to run Script1 and Script2 in parallel and Script3 should depend on successful completion of both Script1 and Script2.
Could you please suggest an approach of acheiving this...
Thanks in advance (2 Replies)
I need to process 50 sqlplus scripts which are listed in a text file. I need to develop a shell script that'll read this file and run these sqlplus scripts. At any point of time, the number of sqlplus scripts running shouldn't exceed 6. If any of the sqlplus scripts completes successfully then... (17 Replies)
Hi
I want to execute few scripts in Parallel. There is a Master Script (MS.ksh) which will call internally all the scripts we need to run in Parallel. Say there are three set of scripts :
ABC_1.ksh --> ABC_2.ksh --> ABC_3.ksh (execute ABC_2 when ABC_1 is successful ; Execute ABC_3 only when... (6 Replies)
Hi all - I am totally stuck here :wall
I have been asked to write a shell script that does a few little things and then reads from a config file and kicks off an instance of another script, say scriptB.ksh for each line in the config file. These should all be run in parallel. This is all fine but... (2 Replies)
Hi Folks
I have a doubt. I have a script which is running with 2 input parameters
./GetDSLnkCount.sh <jobnumber> Parmfile.txt
I need to run the script in parallel for different jobnumbers. The commands are
./GetDSLnkCount.sh jnhuc14500 Parmfile.txt
./GetDSLnkCount.sh jnhuc14501... (3 Replies)
Need some help to replace bash script with parallel to speed up job on multiple files (400files.list is the file contains the absolute path to those 400 files). The bash script is to run the same program over the files repetitively.
My bash_script.sh is:
for sample in `cat 400files.list`; do... (3 Replies)
Discussion started by: yifangt
3 Replies
LEARN ABOUT SUNOS
trap
trap(1) User Commands trap(1)NAME
trap, onintr - shell built-in functions to respond to (hardware) signals
SYNOPSIS
sh
trap [ argument n [n2...]]
csh
onintr [-| label]
ksh
*trap [ arg sig [ sig2...]]
DESCRIPTION
sh
The trap command argument is to be read and executed when the shell receives numeric or symbolic signal(s) (n). (Note: argument is scanned
once when the trap is set and once when the trap is taken.) Trap commands are executed in order of signal number or corresponding symbolic
names. Any attempt to set a trap on a signal that was ignored on entry to the current shell is ineffective. An attempt to trap on signal 11
(memory fault) produces an error. If argument is absent all trap(s) n are reset to their original values. If argument is the null string
this signal is ignored by the shell and by the commands it invokes. If n is 0 the command argument is executed on exit from the shell. The
trap command with no arguments prints a list of commands associated with each signal number.
csh
onintr controls the action of the shell on interrupts. With no arguments, onintr restores the default action of the shell on interrupts.
(The shell terminates shell scripts and returns to the terminal command input level). With the - argument, the shell ignores all inter-
rupts. With a label argument, the shell executes a goto label when an interrupt is received or a child process terminates because it was
interrupted.
ksh
trap uses arg as a command to be read and executed when the shell receives signal(s) sig. (Note that arg is scanned once when the trap is
set and once when the trap is taken.) Each sig can be given as a number or as the name of the signal. trap commands are executed in order
of signal number. Any attempt to set a trap on a signal that was ignored on entry to the current shell is ineffective. If arg is omitted
or is -, then the trap(s) for each sig are reset to their original values. If arg is the null (the empty string, e.g., "" ) string then
this signal is ignored by the shell and by the commands it invokes. If sig is ERR then arg will be executed whenever a command has a non-
zero exit status. If sig is DEBUG then arg will be executed after each command. If sig is 0 or EXIT for a trap set outside any function
then the command arg is executed on exit from the shell. The trap command with no arguments prints a list of commands associated with each
signal number.
On this man page, ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways:
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. Words, following a command preceded by ** that are in the format of a variable assignment, are expanded with the same rules as a vari-
able assignment. This means that tilde substitution is performed after the = sign and word splitting and file name generation are not
performed.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO csh(1), exit(1), ksh(1), sh(1), attributes(5)SunOS 5.10 23 Oct 1994 trap(1)