关于crontab

angel2lc 2007-05-03 05:55:08
1.以下是serverState.sh脚本(向数据库中插入数据)
java -cp /home/oracle/x3/jqgljava/openlab/JQGL.jar:/home/oracle/x3/jdk1.5.0_06/lib/ojdbc14.jar source.ServerDaemon
2.以下是crontab文件
10 * * * * /home/oracle/x3/jqgljava/openlab/serverState.sh

单独在任何路径运行sh /home/oracle/x3/jqgljava/openlab/serverState.sh能执行成功,向数据库插入数据成功
但是crontab就是不能执行成功,crontab的log :May 3 17:30:00 JQGL CROND[3887]: (root) CMD (/home/oracle/x3/jqgljava/openlab/Licence.sh )
不知道为什么了,郁闷~~~~~~~~~~~~~~~~
请求各位大力支持!!!!!!!!!
...全文
292 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
j2eeprogramer 2008-10-23
  • 打赏
  • 举报
回复
最好在oracle 用户下的 crontab 中加入 shell 。

如果在别的用户下,就需要在脚步中加入环境变量的设置,具体可以参考 oracle用户 的 .profile 文件中的设置。将相应的设置信息 复制到 脚步中即可
hly930 2008-10-22
  • 打赏
  • 举报
回复
脚本里要把运行的环境变量写进去.
maxmurphy 2008-05-24
  • 打赏
  • 举报
回复
可以尝试把运行脚本的用户环境配置文件中的内容都复制到脚本里面,这样可以保证脚本运行时获得与运行用户相同的环境。
myf867 2008-05-13
  • 打赏
  • 举报
回复
首先 要确定你的脚本是在哪个用户里执行,并且在这用户里可以执行
在相应的用户里 用crontab -e 建crontab任务


meiZiNick 2008-05-01
  • 打赏
  • 举报
回复
这个简单啊,网上搜一下就得到答案了.
angel2lc 2007-05-03
  • 打赏
  • 举报
回复
serverState.sh直接执行一点问题都没有
angel2lc 2007-05-03
  • 打赏
  • 举报
回复
我又把serverState.sh文件改成如下:还是不行
#!/bin/sh
cd /home/oracle/x3/jqgljava/openlab
PATH=/bin:/home/oracle/x3/jqgljava/openlab
export PATH;
LD_LIBRARY_PATH=/home/oracle/OraHome1/lib:/lib:/usr/lib:/home/oracle/x3/jdk1.5.0_06/lib
export LD_LIBRARY_PATH
/home/oracle/x3/jdk1.5.0_06/bin/java -cp /home/oracle/x3/jqgljava/openlab/JQGL.jar:/home/oracle/x3/jdk1.5.0_06/lib/ojdbc14.jar source.ServerState >/home/oracle/x3/jqgljava/openlab/log/serverState.log
  • 打赏
  • 举报
回复
连#!/bin/sh都没有吗?首先你得能让serverState.sh直接执行没问题,把命令的路径写全

3,286

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 实用资料发布区
社区管理员
  • 实用资料发布区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧