08-01-2006
Need to execute 2 scripts, wait, execute 2 more wait, till end of file
I need to execute a shell script to do the following:
cat a file
run two back ground processes using the first two values from the file
wait till those background processes finish
run two more background processes using the next two values from the file
wait till those background processes finish
etc till the end of the file.
Can anyone give me a way to do this? I cannot run all of the background processes at the same time, I can only do two at time.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi All,
Since I want to execute TCL scripts in HP-UX, I cannot find where to start. I try to execute the following scripts. It gets "tclsh: not found." errors.
Where / how to execute tcl scripts? Thanks a lots.
#!/bin/sh
# the next line restarts using wish \
exec tclsh "$0" "$@" (3 Replies)
Discussion started by: wilsonchan1000
3 Replies
2. Shell Programming and Scripting
Hi
I am creating 3 background processes in my shell script using &.
I have obtained the 3 PIDs of the background processes using $!.
I need to wait for these to complete and i need the exit status of each of these.
If i use :
wait $PID1
wait $PID2
wait $PID3
and get the exit status of... (1 Reply)
Discussion started by: Vinaya
1 Replies
3. Shell Programming and Scripting
Did not use 'wait' yet.
How I understand by now the wait works only for child processes, started background.
Is there any other way to watch completion of any, not related process (at least, a process, owned by the same user?)
I need to start a background process, witch will be waiting... (2 Replies)
Discussion started by: alex_5161
2 Replies
4. UNIX for Dummies Questions & Answers
Hello All,
i am a newbie and need some help when reading a csv file in a bourne shell script. I want to read 10 lines, then wait for a minute and then do a reading of another 10 lines and so on in the same way. I want to do this till the end of file.
Any inputs are appreciated
... (3 Replies)
Discussion started by: victor.s
3 Replies
5. Shell Programming and Scripting
Hi,
I am facing a strange issue,
when i call a script from my while loop in background it doesnt go in background, despite the wait i put below the whil loop it goes forward even before the process put in background is completed.
cat abc.txt | while read -u4 line
do
#if line contains #... (2 Replies)
Discussion started by: mihirvora16
2 Replies
6. Shell Programming and Scripting
first of all I thought the argument DONE is necessary for all scripts that have or begin with do statements which I have on my script, However, I still don't completely understand why I am receiving an error I tried adding another done argument statement but didn't do any good.
I appreciate... (3 Replies)
Discussion started by: wolf@=NK
3 Replies
7. Shell Programming and Scripting
Hi All, i have a requirement
I created a file list as below :
more abc_file_list.txt
Rem_DD.csv
Rem_Non.csv
Rem_Ld.csv
CC_Ld_Non_IRA.csv ...
Above are the 4 files (For now ,we dont know how many in the file) which need to be present else need to get an email for missing files.
... (3 Replies)
Discussion started by: dssyadav
3 Replies
8. Programming
Hi,
How to wait the slave to be finished first then execute the master?
Can someone give me the specific function? Or the detailed example.
Thanks~ (1 Reply)
Discussion started by: wanliushao
1 Replies
9. AIX
Hi,
I am really sorry for this question but still i am confused.
I have shell script called sample.sh
I can execute only with the combination of ./sample.sh
Is ./ really necessary ? Is it something related with $HOME or $PATH variable.
Why and How can i resolve this case ?
... (2 Replies)
Discussion started by: Nandy
2 Replies
10. UNIX for Beginners Questions & Answers
Hi
I am facing a problem in my ksh.
My main script is calling 3 different child process in the background.
I am using wait to finish all and then submit another 3 child processes.
Now what i want is , whenever any one child process finishes ,i want to submit next one.so that parallel 3... (2 Replies)
Discussion started by: Sangu
2 Replies
FLOCK(1) User Commands FLOCK(1)
NAME
flock - manage locks from shell scripts
SYNOPSIS
flock [options] <file|directory> <command> [command args]
flock [options] <file|directory> -c <command>
flock [options] <file descriptor number>
DESCRIPTION
This utility manages flock(2) locks from within shell scripts or the command line.
The first and second forms wrap the lock around the executing a command, in a manner similar to su(1) or newgrp(1). It locks a specified
file or directory, which is created (assuming appropriate permissions), if it does not already exist. By default, if the lock cannot be
immediately acquired, flock waits until the lock is available.
The third form uses open file by file descriptor number. See examples how that can be used.
OPTIONS
-s, --shared
Obtain a shared lock, sometimes called a read lock.
-x, -e, --exclusive
Obtain an exclusive lock, sometimes called a write lock. This is the default.
-u, --unlock
Drop a lock. This is usually not required, since a lock is automatically dropped when the file is closed. However, it may be
required in special cases, for example if the enclosed command group may have forked a background process which should not be hold-
ing the lock.
-n, --nb, --nonblock
Fail rather than wait if the lock cannot be immediately acquired. See the -E option for the exit code used.
-w, --wait, --timeout seconds
Fail if the lock cannot be acquired within seconds. Decimal fractional values are allowed. See the -E option for the exit code
used.
-o, --close
Close the file descriptor on which the lock is held before executing command . This is useful if command spawns a child process
which should not be holding the lock.
-E, --conflict-exit-code number
The exit code used when the -n option is in use, and the conflicting lock exists, or the -w option is in use, and the timeout is
reached. The default value is 1.
-c, --command command
Pass a single command, without arguments, to the shell with -c.
-h, --help
Print a help message.
-V, --version
Show version number and exit.
EXAMPLES
shell1> flock /tmp -c cat
shell2> flock -w .007 /tmp -c echo; /bin/echo $?
Set exclusive lock to directory /tmp and the second command will fail.
shell1> flock -s /tmp -c cat
shell2> flock -s -w .007 /tmp -c echo; /bin/echo $?
Set shared lock to directory /tmp and the second command will not fail. Notice that attempting to get exclusive lock with second
command would fail.
shell> flock -x local-lock-file echo 'a b c'
Grab the exclusive lock "local-lock-file" before running echo with 'a b c'.
(
flock -n 9 || exit 1
# ... commands executed under lock ...
) 9>/var/lock/mylockfile
The form is convenient inside shell scripts. The mode used to open the file doesn't matter to flock; using > or >> allows the lock-
file to be created if it does not already exist, however, write permission is required. Using < requires that the file already
exists but only read permission is required.
[ "${FLOCKER}" != "$0" ] && exec env FLOCKER="$0" flock -en "$0" "$0" "$@" || :
This is useful boilerplate code for shell scripts. Put it at the top of the shell script you want to lock and it'll automatically
lock itself on the first run. If the env var $FLOCKER is not set to the shell script that is being run, then execute flock and grab
an exclusive non-blocking lock (using the script itself as the lock file) before re-execing itself with the right arguments. It
also sets the FLOCKER env var to the right value so it doesn't run again.
EXIT STATUS
The command uses sysexits.h return values for everything else but an options -n or -w failures which return either the value given by the
-E option, or 1 by default.
AUTHOR
H. Peter Anvin <hpa@zytor.com>
COPYRIGHT
Copyright (C) 2003-2006 H. Peter Anvin.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICU-
LAR PURPOSE.
SEE ALSO
flock(2)
AVAILABILITY
The flock command is part of the util-linux package and is available from Linux Kernel Archive <ftp://ftp.kernel.org/pub/linux/utils/util-
linux/>.
util-linux September 2011 FLOCK(1)