shell脚本18

编写一个能够对zebra软件(用于提供软路由服务的软件)实现启动、终止等管理操作的脚本;
需求描述:
     编写zebra脚本,并保存在“/etc/init.d/”目录中,要求如下:
 能够执行"/etc/init.d/zebrad start" 启动zebra服务程序。
 能够执行"/etc/init.d/zebrad stop" 终止zebra服务程序。
 能够执行"/etc/init.d/zebrad restart" 重新启动zebra服务程序。
 能够执行"/etc/init.d/zebrad status" 查看zebra服务的状态。
 若执行脚本时未使用"start"、 "stop"、 "restart"、 "status"参数,则提示用法帮助信息后再退出。
 在启动、终止服务时应显示相应的提示信息。
   通过"chkconfig --add  zebrad"命令将zebrad添加为系统服务,并确认在运行级别35中的状态为自动启动
 具体实现:
#!/bin/bash
#chkconfig: 2345 99 60
#description: start/stop the zebra router daemon
. /etc/init.d/functions
start() {
 echo -n "start zebra daemon..."
 /usr/local/sbin/zebra -d
 [ $? -eq 0 ] && echo "ok"
}
stop() {
 echo -n "shutdown zebra daemon..."
 kill `cat /var/run/zebra.pid` &>/dev/null
 [ $? -eq 0 ] && echo "ok"
}
status() {
 ps aux |grep "zebra -d"|grep -v "grep"&>/dev/null
 if [ $? -eq 0 ] ; then
  echo "newhttpd is up"
 else
  echo "newhttpd is down"
 fi
}
case "$1" in
 start)
  start
  ;;
 stop)
  stop
  ;;
 restart)
  stop
  start
  ;;
 status)
  status
  ;;
 *)
  echo "usage: $0 {start|stop|restart|status}"
  exit 1
esac

 

本文出自 “上善若水威加海内” 博客,转载请与作者联系!

你可能感兴趣的:(职场,shell脚本,休闲)