Unix shell脚本中的随机错误

时间:2015-02-18 10:26:50

标签: sql bash unix plsql

我有一个shell脚本,它反过来调用sql文件。它是一个在UNIX中运行的bash shell。以下是脚本中采取的主要步骤。 1)生成Term文件 2)从实用程序目录中删除前一天的Term和Rpt文件。 3)将术语文件从Run目录复制到Utility目录。 4)运行sql文件 5)将输出,RPT文件从Utility复制到Run目录。

以下是代码段:

> RUN_DIR/nj.terms
if [[ -s RUN_DIR/nj.terms ]] then
rm -f /utl/nj.terms
rm -f /utl/nj.rpt
cp RUN_DIR/nj.terms utl

/bin/sqlplus USER PSWD @sql

cp utl/nj.RPT RUN_DIR

fi

我从sql输出中得到以下错误: ORA-29283 - 文件操作无效。

大多数情况下,这个错误是由于每当sql运行时都没有Term文件。由于此错误,将不会生成RPT文件并导致以下复制命令失败(cp utl / nj.RPT RUN_DIR)。失败后,当我们检查Term文件时,它出现在Utl目录中。

此错误随机发生。有没有机会系统需要更多的时间将Term文件复制到Utility目录,并在完成它之前运行sql?如果有人能在这种情况下帮助我,那就太好了。

0 个答案:

没有答案