当前位置: 技术问答>linux和unix
脚本不执行的命令????
来源: 互联网 发布时间:2015-09-25
本文导语: 以下均是在tomcat用户下 操作 编辑 一个重新启动的脚本 #!/bin/sh /usr/local/tomcat/bin/shutdown.sh sleep 2 pname=`ps -aux | grep /usr/local/tomcat/bin/bootstrap.jar | awk '{print $2}'` echo "program pid : $pname" for name in $pname; do echo...
以下均是在tomcat用户下 操作
编辑 一个重新启动的脚本
#!/bin/sh
/usr/local/tomcat/bin/shutdown.sh
sleep 2
pname=`ps -aux | grep /usr/local/tomcat/bin/bootstrap.jar | awk '{print $2}'`
echo "program pid : $pname"
for name in $pname;
do
echo "kill $name"
kill -9 $name
done
sleep 3
/usr/local/tomcat/bin/startup.sh
编辑定时器
[tomcat@localhost bin]$ crontab -e
* */6 * * * /usr/local/tomcat/bin/kill.sh
在定时器运行的时候 只有kill命令执行了
/usr/local/tomcat/bin/shutdown.sh和/usr/local/tomcat/bin/startup.sh
都没有执行
但是如果运行/usr/local/tomcat/bin/kill.sh 就完全正常
这个到底是什么原因啊
编辑 一个重新启动的脚本
#!/bin/sh
/usr/local/tomcat/bin/shutdown.sh
sleep 2
pname=`ps -aux | grep /usr/local/tomcat/bin/bootstrap.jar | awk '{print $2}'`
echo "program pid : $pname"
for name in $pname;
do
echo "kill $name"
kill -9 $name
done
sleep 3
/usr/local/tomcat/bin/startup.sh
编辑定时器
[tomcat@localhost bin]$ crontab -e
* */6 * * * /usr/local/tomcat/bin/kill.sh
在定时器运行的时候 只有kill命令执行了
/usr/local/tomcat/bin/shutdown.sh和/usr/local/tomcat/bin/startup.sh
都没有执行
但是如果运行/usr/local/tomcat/bin/kill.sh 就完全正常
这个到底是什么原因啊
|
crontab不包含你的执行环境
所以你要在你的crontab执行的脚本中输出你的环境变量
或者使用 su - 用户 -c 要求执行的程序
所以你要在你的crontab执行的脚本中输出你的环境变量
或者使用 su - 用户 -c 要求执行的程序