给出这个unix脚本,这是预定的批量运行:
isql -U$USR -S$SRVR -P$PWD -w2000 < $SCRIPTS/sample_report.sql > $TEMP_DIR/sample_report.tmp_1
sed 's/-\{3,\}//g' $TEMP_DIR/sample_report.tmp_1 > $TEMP_DIR/sample_report.htm_1
uuencode $TEMP_DIR/sample_report.htm_1 sample_report.xls > $TEMP_DIR/sample_report.mail_1
mailx -s "Daily Sample Report" email@example.com < $TEMP_DIR/sample_report.mail_1
有时会在邮件中附加sample_report.xls,为空,零行。
我排除了以下内容:
我无法重现这一点,因为我不知道原因。有没有其他人经历过这个或有办法解决这个问题?有什么建议如何找到原因?是unix还是Sybase isql?
答案 0 :(得分:0)
我找到了原因。由于这是预定的,因此该特定报告需要很长时间才能生成。其他预定的脚本,我发现有这行代码:
rm -f $TEMP_DIR/*
如果这个长时间运行的报告与上面一行的一个预定脚本重叠,则可能会删除.tmp_1,因此在邮寄时它是空白的。我通过在报告仍然在那里写sql时手动删除.tmp_1来复制它。