最近一台hp-ux的机器打完补丁,导致之前的一个脚本无法通过datastage正常调用。
检查的时候,直接在命令行下执行shell脚本,正常;通过datastage调用,异常。
对比了两个环境的环境变量之后,发现区别在SHLIB_PATH是否设置。
但是,简单的取消该环境变量,会导致其他应用无法正常运行,所以这个方法不行。
继续研究,发现如果通过sh方式调用该脚本,无论是否设置SHLIB_PATH,脚本都正常。
于是检查该脚本第一句话,发现是“#!/usr/bin/ksh”。将其改为#!/usr/bin/sh,问题排除。
为什么会这样,不太理解,但是方法的确有用。希望对其他人有所启发。
阅读(1720) | 评论(0) | 转发(0) |