使用命令重新启动服务工作正常,但在shell脚本中使用相同的命令无法重新启动

时间:2016-04-26 13:11:21

标签: shell

正在使用的脚本如下所示,

xx.sh:

#!/bin/bash
export LD_LIBRARY_PATH=/opt/microfocus/cobol/lib
ps auxw | grep ESDEMO | grep -v grep > /dev/null
if [ $? != 0 ]
then
cd /opt/microfocus/cobol/bin
./casstart
echo "service was not running and has been restarted"
else
echo "service is running on $(hostname) as on $(date)"
fi

yy.sh(xx.sh的包装脚本):

#!/bin/bash
su -c './xx.sh'

在执行yy.sh脚本重启ESDEMO时,我收到错误 - “/ opt / microfocus / cobol / bin / casstart32:加载共享库时出错:libcasmfsysv.so:无法打开共享对象文件:没有这样的文件或目录“。

验证了PATH环境变量。 “/ opt / microfocus / cobol / bin”设置正确。

已验证LD_LIBRARY_PATH。 echo $ LD_LIBRARY_PATH 的/ opt /微焦/ COBOL / lib中

如脚本所示,尝试在脚本本身设置LD_LIBRARY_PATH。

同时,我可以通过给出casstart + Enter在putty中手动启动服务。 但是在使用脚本执行时会出现上述错误。

请尽早帮助解决此问题。

0 个答案:

没有答案