码迷,mamicode.com
首页 > 其他好文 > 详细

把ps -ef & kill指令写成可以自动执行的shell脚本

时间:2014-05-07 20:18:02      阅读:461      评论:0      收藏:0      [点我收藏+]

标签:style   blog   class   code   java   tar   

之前重启服务器上的服务,均是先使用ps -ef | grep xxx指令查询出PID,然后再使用kill -9 PID指令杀死进程。由于重启的服务只止一个,每次都要重复输入,甚是麻烦。

示例

今天研究了一下,把以上手动查杀、重启服务的过程写成了shell脚本,重启服务只需执行脚本就可以了。附脚本样例:

bubuko.com,布布扣
 1 #!/bin/sh
 2 
 3 # restart das-web
 4 ps -ef | grep /home/***/das-web/ | awk ‘{print $2}‘ | xargs -n 1 kill -9
 5 
 6 # restart apache1
 7 ps -ef | grep /usr/local/apache-tomcat-6.0.37/ | awk ‘{print $2}‘ | xargs -n 1 kill -9
 8 
 9 # restart apache2
10 ps -ef | grep /usr/local/apache-tomcat-6.0.37-2/ | awk ‘{print $2}‘ | xargs -n 1 kill -9
11 
12 # restart jetty
13 ps -ef | grep com.***.open.JettyServer | awk ‘{print $2}‘ | xargs -n 1 kill -9
14 
15 ps -ef | grep java | awk ‘{print $2}‘ | xargs -n 1 kill -9
16 
17 cd /home/***/das-web/bin/
18 /home/***/das-web/bin/startup.sh
19 
20 cd /usr/local/apache-tomcat-6.0.37/bin/
21 /usr/local/apache-tomcat-6.0.37/bin/startup.sh
22 
23 cd /usr/local/apache-tomcat-6.0.37-2/bin/
24 /usr/local/apache-tomcat-6.0.37-2/bin/startup.sh
25 
26 cd /home/***/CaijingOpen/bin/
27 /home/***/CaijingOpen/bin/run.sh
bubuko.com,布布扣

 

说明

在shell脚本中调用另一个脚本的三种不同方法:

  1. /dir/script.sh
    fork是最普通的就是直接在脚本里面用/directory/script.sh来调用script.sh这个脚本。运行的时候开一个sub-shell执行调用的脚本sub-shell执行的时候, parent-shell还在。sub-shell执行完毕后返回parent-shell. sub-shellparent-shell继承环境变量.但是sub-shell中的环境变量不会带回parent-shell。
    作者用的却是这种。

  2. exec /dir/script.sh
    execfork不同,不需要新开一个sub-shell来执行被调用的脚本.  被调用的脚本与父脚本在同一个shell内执行。但是使用exec调用一个新脚本以后父脚本中exec行之后的内容就不会再执行了。这是execsource的区别

  3. source /dir/script.sh
    fork的区别是不新开一个sub-shell来执行被调用的脚本,而是在同一个shell中执行所以被调用的脚本中声明的变量和环境变量都可以在主脚本中得到和使用

xargs -n 1 表示每次传入一个参数,这里是PID。

awk表示执行后面的指令,在这里是获取PID列表。

 

 

 

 

把ps -ef & kill指令写成可以自动执行的shell脚本,布布扣,bubuko.com

把ps -ef & kill指令写成可以自动执行的shell脚本

标签:style   blog   class   code   java   tar   

原文地址:http://www.cnblogs.com/sban/p/3709727.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!