linux shell脚本

jiang580617 2013-09-24 11:55:40
我在linux上的一个程序,在不定时死掉,我想弄一个shell脚本来监听该程序
但是写的shell报错,不撒懂写shell脚本,求大神给一个shell监听脚本
...全文
478 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
Liteboy 2013-10-23
  • 打赏
  • 举报
回复
你能不能把你的进程名称启动方法给贴出来,直接写个完整地给你
shucheng36 2013-10-23
  • 打赏
  • 举报
回复
引用 15 楼 shucheng36 的回复:
[quote=引用 10 楼 ljc007 的回复:] [quote=引用 9 楼 steptodream 的回复:]
ps -ef | grep "你要监控的进程名字" || echo 重新启动
这个命令会把本身grep的这个进程给显示出来 所以不会say 重新启动 ps -ef | grep "你要监控的进程名字" | grep -v grep || 启动你的进程 [/quote] ps -ef | grep "[b]ash" 其实不用grep -v的[/quote] 请问这个不用grep -v的原理是什么?想不通啊,但是确实有效[/quote] 想通了,那个进程变成了grep [b]ash,匹配不了了
shucheng36 2013-10-23
  • 打赏
  • 举报
回复
引用 10 楼 ljc007 的回复:
[quote=引用 9 楼 steptodream 的回复:]
ps -ef | grep "你要监控的进程名字" || echo 重新启动
这个命令会把本身grep的这个进程给显示出来 所以不会say 重新启动 ps -ef | grep "你要监控的进程名字" | grep -v grep || 启动你的进程 [/quote] ps -ef | grep "[b]ash" 其实不用grep -v的[/quote] 请问这个不用grep -v的原理是什么?想不通啊,但是确实有效
yundeweilai 2013-10-22
  • 打赏
  • 举报
回复
每一个程序起来时,产生一个进程,这是会在/proc/先产生一个进程号的文件,你在这个脚本,写一个判断语句,判断一下这个文件存在不,如果不存在启动程序,如果存在exit。$$好像就可以提取本脚本的进程的pid。然后写在计划认为里面
ljc007 2013-10-08
  • 打赏
  • 举报
回复
引用 11 楼 jiang580617 的回复:
楼上的大神,能从开始判断到后面的启动,有一个完整的嘛?小弟确实不懂shell脚本,请赐教!
以tomcat为例
ps -ef | grep "[t]omcat" || /tomcat/bin/startup.sh
jiang580617 2013-10-01
  • 打赏
  • 举报
回复
楼上的大神,能从开始判断到后面的启动,有一个完整的嘛?小弟确实不懂shell脚本,请赐教!
ljc007 2013-09-30
  • 打赏
  • 举报
回复
引用 9 楼 steptodream 的回复:
ps -ef | grep "你要监控的进程名字" || echo 重新启动
这个命令会把本身grep的这个进程给显示出来 所以不会say 重新启动 ps -ef | grep "你要监控的进程名字" | grep -v grep || 启动你的进程 [/quote] ps -ef | grep "[b]ash" 其实不用grep -v的
steptodream 2013-09-30
  • 打赏
  • 举报
回复
引用 7 楼 ljc007 的回复:
[quote=引用 5 楼 jiang580617 的回复:] 4楼 进程挂掉就死掉了,想让他重新启动起来,程序运行起来
ps -ef | grep "你要监控的进程名字" || echo 重新启动
[/quote] 这个命令会把本身grep的这个进程给显示出来 所以不会say 重新启动 ps -ef | grep "你要监控的进程名字" | grep -v grep || 启动你的进程
JuanA1 2013-09-26
  • 打赏
  • 举报
回复
试试这个,每3s检查一次: while [ 1 ] do ps -e|grep "进程名" if [ $? != 0 ] then sh "进程名 " fi sleep 3 done
姜小白- 2013-09-25
  • 打赏
  • 举报
回复
引用 5 楼 jiang580617 的回复:
4楼 进程挂掉就死掉了,想让他重新启动起来,程序运行起来
进程挂掉后,进程在后台得状态什么样呢,知道吗
qiyu1988 2013-09-25
  • 打赏
  • 举报
回复

time=0
ret=0
while[ 1 ]
do
    ./yourfile
    ret=$?
    let "time=time+1"
    echo "ret=${ret}, time=${time}"
done
jiang580617 2013-09-25
  • 打赏
  • 举报
回复
4楼 进程挂掉就死掉了,想让他重新启动起来,程序运行起来
ljc007 2013-09-25
  • 打赏
  • 举报
回复
引用 1 楼 jiang580617 的回复:
我想,监听到程序死掉后,把程序启动起来。求大神帮忙
你需要详细的描述一下如何判断它是否死掉了
姜小白- 2013-09-25
  • 打赏
  • 举报
回复
正好有这个问题,跟着学习下。
ljc007 2013-09-25
  • 打赏
  • 举报
回复
引用 5 楼 jiang580617 的回复:
4楼 进程挂掉就死掉了,想让他重新启动起来,程序运行起来
ps -ef | grep "你要监控的进程名字" || echo 重新启动
jiang580617 2013-09-24
  • 打赏
  • 举报
回复
我想,监听到程序死掉后,把程序启动起来。求大神帮忙

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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