0

在我的 UNIX shell 脚本中,我需要插入一个参数来启动它。这个参数可以假设两个值(测试和生产)。在代码中,我在 Oracle 数据库中进行了插入。在这个插入之后,我必须做出一个条件,如果参数是test然后将假脱机写入另一个文件并且不连接数据库,否则连接数据库并正常插入。基本上有两种方法;在测试中,我只想看看 shell 将要做什么以及它进行正常插入的生产和他的操作。我在插入后尝试此操作,但出现错误:

if [[ "$choice" = "test" ]];
then  
  ${TMP_PART2DAT} > ${TMP_REPORT}
else
  SP_SQLLOGIN="$ORACLE_DB_OWN/$ORACLE_PWD@$ORACLE_SID"
  sqlplus -S -L ${SP_SQLLOGIN} @${TMP_PART2SQL}   
fi 

有任何想法吗?

4

2 回答 2

1

尝试使用“bash -x”模式运行您的 shell 脚本。您将能够跟踪命令执行。

于 2013-07-01T19:09:59.553 回答
0

尝试

cat ${TMP_PART2DAT} > ${TMP_REPORT}

对于脚本的第 3 行。

这将用 TMP_PART2DAT 的内容覆盖 TMP_REPORT 中的所有内容。

于 2013-07-01T13:59:01.777 回答