背景工作,等待和cron

时间:2012-09-11 22:42:10

标签: shell crontab

我有以下ksh脚本:

sqlplus usr1/pw1@DB1 @$DIR/a.sql $1 &
sqlplus usr2/pw2@DB2 @$DIR/b.sql $1 &
wait
echo "Done!"

其中$ DIR是一个带有绝对路径的变量,其中a.sql和b.sql是。

有一段时间,我每天都在运行这个脚本,它运行正常。 意图是两个SQL * Plus会话都转到后台 并行执行,当他们完成时我可以继续 以下步骤。

由于它不再是测试版本,我在crontab上安排了它 每天执行。我现在遇到的问题是它不会停下来 “等待”并让sqlplus会话完成,但它直接输出 “完成!”。在真正的应用程序中,“回声完成!”实际上是一个电话 另一个程序对a.sql和b.sql的输出进行一些处理。 但是因为它不等待两个sql脚本实际完成, 处理无法完成。

当我自己运行时,它的工作绝对完美,我从中做到了 本地目录或从根目录(如crontab所做)。但 当它由crontab自动执行时,我不会停下来 等等并拧紧整个事情。

关于可能发生的事情的任何想法?谢谢!

0 个答案:

没有答案