0

我有一个运行 genReport.sh 以创建 .pdf 格式的报告的 shell 脚本,当它从命令行运行时它可以完美运行。报告的数据源是一个 ClearQuest 数据库。

当它从 CRON 作业运行时,会创建 .pdf 文件,但仅显示各种报告和列标题,并且报告的数据丢失。在脚本执行期间没有向 STDERR 报告错误。

这对我来说是“环境变量”。

目前,shell 脚本定义如下:

CQ_HOME
BIRT_HOME
ODBCINI
ODBCINST
LD_LIBRARY_PATH

如果是环境问题,我错过了环境的哪一部分?

4

2 回答 2

0

没有看到脚本,这只是猜测。这可能是引用问题,或者与文件或可执行文件的相对路径有关,应该是绝对的。通常,问题是$PATHcron 环境中列出的目录与用户环境中的目录不同。您可以做的一件事来帮助诊断是将此行添加到您的脚本中:

env > /tmp/someoutputfilename.$$

并从命令行运行脚本cron并进行比较。

于 2010-05-20T00:49:02.120 回答
0

结果证明,让这个运行的神奇之处在于评估clearquest -dumpsh命令的输出,而这又需要设置 TZ 变量。该命令输出十几个变量。

于 2010-06-04T14:59:15.503 回答