下面是我的cron条目:
#!/bin/bash
09 01 * * * /home/c/charlesp/jobs.sh > /home/c/charlesp/jobs1.log 2>&1
这仅给我错误输出,但不提供编写脚本的实际输出。该脚本可以正常运行,并且在直接执行而不是在cron中执行时可以提供所需的输出。当它在crontab中运行时,给出的错误如下。请帮忙。仅当我在cron中运行这些错误时,它们才会出现。不在cron之外。
错误:
1。当我直接在脚本中给出autorep命令时:
/home/c/charlesp/jobs.sh: line 3: autorep: command not found
2。当我在脚本中给autorep命令以及绝对路径时:
/opt/CA/WorkloadAutomationAE/autosys/bin/autorep: error while loading shared libraries: libascmn.so: cannot open shared object file: No such file or directory
我的脚本在下面:
仅autorep命令:
#!/usr/local/bin/bash
autorep -j ALL -L0 | grep -w RU > /home/c/charlesp/jobs.txt
具有绝对路径:
#!/usr/local/bin/bash
/opt/CA/WorkloadAutomationAE/autosys/bin/autorep -j ALL -L0 | grep -w RU > /home/c/charlesp/jobs.txt
答案 0 :(得分:0)
如戈登所说,cron在最小的环境下运行。
对于错误1: 首先,我们需要对脚本中所有作为cron条目保留的内容使用绝对路径。因此,如下所示的脚本中提供了完整的路径。
/ opt / CA / WorkloadAutomationAE / autosys / bin / autorep -j ALL -L0 | grep -w RU> /home/c/charlesp/jobs.txt
这里有错误2。
对于错误2: 由于libascmn.so不可用,我们需要将存在libascmn.so的路径导出到LD_LIBRARY_PATH,如下所示。
-bash-4.3 $ export LD_LIBRARY_PATH = $ LD_LIBRARY_PATH:/ opt / CA / WorkloadAutomationAE / autosys / lib
这里有错误3。
对于错误3:
以下是错误:
寻找key =“ CAUAJM_E_80003”时资源束不可用。
为此,我们需要像下面这样采购autosys的环境。
-bash-4.3 $。 /opt/CA/WorkloadAutomationAE/autouser.TQ1/autosys.sh.automgmtq1
现在,即使它不适用于.sh脚本,也将其更改为.csh脚本。
现在该脚本在Cron中将像超级按钮一样工作。
谢谢。 :)