SCMLife.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3000|回复: 0

[Perl] crontab中运行perl脚本(转载)

[复制链接]
发表于 2015-3-5 15:42:20 | 显示全部楼层 |阅读模式
crontab里面有一个perl脚本,但是一直执行不成功。7 o2 g4 l- E1 H5 V$ T6 T
手工调用perl ***.pl却可以成功。手工能执行成功 说明该脚本语法以及权限均不存在问题。8 F$ v/ c+ K7 I( w; d8 ^/ l3 B

8 j5 H8 H" J: u# ~1 _/ `4 G通过在crontab中设置跟踪日志
6 I- D" S8 {- t6 Y* A; l- q. X6 Q6 g*、1 * * * * /home/oracle/tools/find_sql.pl >> /home/oracle/find_sql_temp.log 2>&1( `- Y7 i4 Z1 t  z- z
可以捕获到错误信息如下6 m+ ]8 z( @4 I* L5 Y
Can't exec "sendEmail": No such file or directory at /home/oracle/find_sql.pl line 39./ q( g8 l. }6 B, h
初步推断此问题是由环境变量设置不正确导致的,但是perl脚本中已经有了如下设置) ^' c& t" }1 M0 H' ^8 j. o
$ENV{ORACLE_HOME} = "/data/oracle/product/10.2/db1";
4 d3 k4 x' U& g$ENV{ORACLE_SID} = "justin";
: q% N+ J1 k$ w) C  y# s查看.bash_profile设置的路径信息
3 ?0 B# X. ~0 A/ r[oracle@racdg1 ~]$ echo $PATH* p, Y' X; J4 z* v
/home/oracle/bin:/data/oracle/product/10.2/db1/bin:/usr/lib64/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/oracle/bin:/sbin/:/data/oracle/product/10.2/crs//bin:/home/oracle/tools
' V) p; G, z, s* P5 S9 y将其加入到perl脚本中,crontab即可成功调用并执行该perl脚本: F  T# S/ y1 Q' i3 P# D0 v$ E- y
$ENV{PATH} ="/home/oracle/bin:/data/oracle/product/10.2/db1/bin:/usr/lib64/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/oracle/bin:/sbin/:/data/oracle/product/10.2/crs//bin:/home/oracle/tools";
0 K1 [% D% e( E" o- U
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

SCMLife推荐上一条 /4 下一条

QQ|小黑屋|手机版|无图版|SCMLife.com ( 京ICP备06056490号-1 )

GMT+8, 2018-6-22 09:42 , Processed in 0.062503 second(s), 6 queries , Gzip On, MemCache On.

Powered by SCMLife X3.4 Licensed

© 2001-2017 JoyShare.

快速回复 返回顶部 返回列表