当前位置:首页 > 开发 > 操作系统 > 正文

linux下为程序创建启动和关闭的的sh文件,scrapyd为例

发表于: 2012-06-02   作者:酷的飞上天空   来源:转载   浏览:
摘要: 对于一些未提供service管理的程序  每次启动和关闭都要加上全部路径,想到可以做一个简单的启动和关闭控制的文件   下面以scrapy启动server为例,文件名为run.sh:   #端口号,根据此端口号确定PID PORT=6800 #启动命令所在目录 HOME='/home/jmscra/scrapy/' #查询出监听了PORT端口

对于一些未提供service管理的程序  每次启动和关闭都要加上全部路径,想到可以做一个简单的启动和关闭控制的文件

 

下面以scrapy启动server为例,文件名为run.sh:

 

#端口号,根据此端口号确定PID
PORT=6800
#启动命令所在目录
HOME='/home/jmscra/scrapy/'

#查询出监听了PORT端口TCP协议的程序
pid=`netstat -lnopt | grep :$PORT | awk '/python/{gsub(/\/python/,"",$7);print $7;}'`


start(){
   if [ -n "$pid" ]; then
      echo "server already start,pid:$pid"
      return 0
   fi
   
   #进入命令所在目录
   cd $HOME
   nohup scrapy server &   #启动scrpayd服务器 把日志输出到HOME目录的nohup.out文件中 
   echo "start at port:$PORT"
}

stop(){
   if [ -z "$pid" ]; then
      echo "not find program on port:$PORT"
      return 0
   fi
   
   #结束程序,使用讯号2,如果不行可以尝试讯号9强制结束
   kill -2 $pid   
   echo "kill program use signal 2,pid:$pid"
}

status(){
   if [ -z "$pid" ]; then
      echo "not find program on port:$PORT"
   else
      echo "program is running,pid:$pid"
   fi
}

case $1 in
   start)
      start
   ;;
   stop)
      stop
   ;;
   status)
      status
   ;;
   *)
      echo "Usage: {start|stop|status}"
   ;;
esac

exit 0

 

 

使用时则可以

/path/run.sh start启动

/path/run.sh stop停止

/path/run.sh status 查看运行程序的pid

 

不要忘记为run.sh添加可执行权限

linux下为程序创建启动和关闭的的sh文件,scrapyd为例

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
1、如果想使用Linux crontab(类似java quartz),需要先启动crontab.关于crontab的启动、关闭、重启
Linux 下Jboss部署命令 Linux Jboss下常用命令: 启动:nohup ./run.sh -b 0.0.0.0 & 停止: sh shu
以简单的hello world程序为例,我们如何把它写成一个驱动模块,并加载到Linux内核里面呢? 一开始,
步骤一: 步骤二: 运行上述命令以后弹出下面对话框 步骤三 找到管理模块中的“系统”那一项 步骤四
经过1个多星期的努力,终于成功在android模拟器运行了一个netfilter的例子whoVisit.ko 首先准备条件
转自http://blog.csdn.net/fdl19881/article/details/7467129 首先准备条件: 安装git (版本管理软
一.启动 1.1 MySQL 进程 可以用ps 命令查看进程: [root@rac2 ~]# ps -ef|grep mysql root 2161 1 0
0, 重设密码 [root@yqrh5u2 ~]# vncpasswd Password: Verify: [root@yqrh5u2 ~]# 1,启动和kill vnc
一.启动 1.1 MySQL 进程 可以用ps 命令查看进程: [root@rac2 ~]# ps -ef|grep mysql root2161 1 0
0, 重设密码 [root@yqrh5u2 ~]# vncpasswd Password: Verify: [root@yqrh5u2 ~]# 1,启动和kill vnc
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号