私はこれを持っています:
#!/bin/sh
handle_exit()
{
# if func2 called first then do some thing to kill func1 also
# if func1 called first then do some thing to kill func2 also
exit
}
func1()
{
for i in `seq 40`
do
echo I am in func1 $i
sleep 3
if [ "$i" = "20" ] ; then # this could be a failure condition
handle_exit
fi
done
}
func2()
{
for i in `seq 40`
do
echo I am in func2 $i
sleep 3
if [ "$i" = "10" ] ; then # this could be a failure condition
handle_exit
fi
done
}
func1 &
pidfunc1=$!
func2 &
pidfunc2=$!
どのように動作させたいですか:
- サブプロセスとしてfunc1とfunc2を呼び出します。(すでにこれを行っています)
func1
実行中にエラーが発生した場合は、func2を強制終了handle_exit
する必要がexit
func1
あります。- #2と同じですが、func2用です。
func2
実行中にエラーが発生した場合は、func1を強制終了handle_exit
する必要がexit
func2
あります。
手伝ってくれますか?