1、场景说明


  1. [root@master ~]# jps -m
  2. 33050 Jps -m
  3. 3299 NameNode
  4. 3747 ResourceManager
  5. 9028 ConsoleConsumer --zookeeper 192.168.168.200:2181 --topic BusTicket
  6. 4331 Worker --webui-port 8081 spark://master:7077
  7. 3400 DataNode
  8. 3849 NodeManager
  9. 4450 Kafka config/server.properties
  10. 9303 ConsoleConsumer --zookeeper 192.168.168.200:2181 --topic Result
  11. 4243 Master --host master --port 7077 --webui-port 8080
  12. 3590 SecondaryNameNode
  13. 4413 QuorumPeerMain /usr/local/zookeeper/zookeeper-3.4.5/bin/../conf/zoo.cfg​

使用jps -m 命令查看当前运行的java进程,如果我现在需要删除【9028 ConsoleConsumer --zookeeper 192.168.168.200:2181 --topic BusTicket】这个进程:

获取进程执行pid,以便使用kill指令关闭进程

这里使用的 | 管道连接指令的方法。

1、 显示所有进程详情

2、 不显示 grep自身进程

3、 查找进程对应的关键字 ‘BusTicket’,注意必须是此进程独有的关键字

4、 使用awk指令获取 pid 数值


  1. [root@master ~]# ps -ef | grep -v grep | grep BusTicket | awk '{print $2 }'
  2. 9027

之后再使用kill -9 9027 ,为了方便快捷,采用shell脚本停止后台进程更加好。

2、创建脚本文件 stopServer.sh


  1. #!/bin/sh
  2. ### find pid
  3. pid=`ps -ef | grep -v grep | grep BusTicket | awk '{print $2 }'`
  4. if[-n "$pid"];then
  5. ### kill pid
  6. kill -9 $pid
  7. ### check status
  8. process_count=`ps -ef | grep -v grep | grep BusTicket | wc -l`
  9. while[ $process_count -ne 0]
  10. do
  11. sleep 2
  12. process_count=`ps -ef | grep -v grep | grep BusTicket | wc -l`
  13. done
  14. echo 'BusTicket is stoped'
  15. else
  16. echo 'can not find BusTicket'
  17. fi

Linux平台下停止后台进程脚本编写的更多相关文章

  1. Linux平台下源码安装mysql多实例数据库

    Linux平台下源码安装mysql多实例数据库[root@linux-node1 ~]# netstat -tlunp | grep 330tcp6 0 0 :::3306 :::* LISTEN 6 ...

  2. 在 Linux 平台下使用 JNI

    引言 Java 的出现给大家开发带来的极大的方便.但是,如果我们有大量原有的经过广泛测试的非 Java 代码,将它们全部用 Java 来重写,恐怕会带来巨大的工作量和长期的测试:如果我们的应用中需要访 ...

  3. linux平台下防火墙iptables原理(转)

    原文地址:http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646466.html iptables简介 netfilter/iptables( ...

  4. Windows及Linux平台下的计时函数总结

    本文对Windows及Linux平台下常用的计时函数进行总结,包括精度为秒.毫秒.微秒三种精度的各种函数.比如Window平台下特有的Windows API函数GetTickCount().timeG ...

  5. Thrift在Windows及Linux平台下的安装和使用示例

    本文章也同时发表在个人博客Thrift在Windows及Linux平台下的安装和使用示例上. thrift介绍 Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的R ...

  6. Linux平台下裸设备的绑定:

    Linux平台下裸设备的绑定: 运用RAW绑定 方法一 raw的配置(1) [root@qs-dmm-rh2 mapper]# cat /etc/rc.local #!/bin/sh # # This ...

  7. Windows 和 Linux 平台下的端口转发工具

    原文地址: http://unmi.cc/windows-linux-port-forwarding/ 这里记录一下我曾经使用过的几个端口转发工具,即端口映射.端口重定向,和 NAT 也是差不多的概念 ...

  8. 【android开发】如何在Linux平台下安装JDK环境

    原文:http://android.eoe.cn/topic/android_sdk Linux平台JDK安装 本文主要描述如何在Linux平台下安装JDK环境.进入网页:http://www.ora ...

  9. linux平台下防火墙iptables原理

    iptables简单介绍 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它能够取代昂贵的商业 ...

随机推荐

  1. express框架以及配置项

    以上命令会将 Express 框架安装在当前目录的 node_modules 目录中, node_modules 目录下会自动创建 express 目录.以下几个重要的模块是需要与 express 框 ...

  2. c++下基于windows socket的多线程服务器(基于TCP协议)

    之前用c++实现过基于windows socket的单线程TCP服务器(http://www.cnblogs.com/jzincnblogs/p/5170230.html),今天实现了一个多线程的版本 ...

  3. Java中的13个原子操作类

    java.util.concurrent.atomic包一共提供了13个类.属于4种类型的原子更新方式,分别是原子更新基本类型,原子更新数组,原子更新引用和原子更新属性.Atomic包里的类基本都是使 ...

  4. linux c 检测ip变化

    #include <string.h> #include <sys/socket.h> #include <sys/ioctl.h> #include <ne ...

  5. react-navigation实现页面框架(转载)

    初始化一个RN项目 react-native init page_framework page.json { "name": "page_framework", ...

  6. Python之路PythonNet,第一篇,网络1

    pythonnet   网络1 ARPAnet(互联网雏形)--->  民用 ISO(国际标准化组织)--->网络体系结构标准 OSI模型 OSI : 网络信息传输比较复杂需要很多功能协同 ...

  7. jquerymobile动态添的无索刷新

    当我们使用Ajax或者javascript动态在页面上添加元素后,如添加select控件的option元素,添加ul的li元素.添加之后我们会发现,它们显示的样式不是jQuery Mobile的炫酷样 ...

  8. numpy中的复合数组

    1.复合数组的创建 # 复合数组,最重要的是定义dtype a = np.array([('ABC', [1, 2, 3])], dtype="U3, 3i4") print(a) ...

  9. MVC分别代表的含义

    MVC 是一种将应用程序的逻辑层和表现层进行分离的方法.ThinkPHP 也是基于MVC设计模式的.MVC只是一个抽象的概念,并没有特别明确的规定,ThinkPHP中的MVC分层大致体现在:模型(M) ...

  10. (1)什么是web框架和http协议

    Django是一个web框架 web框架的本质:就是一个socket服务端 bs架构本质上就是cs架构(cs架构就是client和server):bs架构就是browser和server,本质上bro ...