• centos下kill、killall、pkill命令区别


    kill是用来终止进程的

    首先可以通过ps aux查看系统有哪些进程正在运行。

    1.用kill来杀死某一个进程

    #kill,加选项-9,加PID,表示杀死进程编号为PID的这个进程
    # -1 重启
    #kill -9 PID
    #下面表示杀死进程PID为2899的进程

    [root@localhost ~]# kill -9 2899

    2.用killall杀死一类进程

    #killall,加选项-9,加服务名, 表示杀死该服务的所有进程
    # -1 重启
    #killall -9 service
    #下面表示杀死httpd服务的所有进程

    [root@localhost ~]# killall -9 httpd

    3.用pkill踢出某个终端

    #pkill,加选项-9,加终端号,表示踢出该终端
    # -1 重启
    #pkill -9 pts/0
    #下面表示提出我的远程登录终端pts/0
    [root@localhost ~]# pkill -9 pts/0
    ___________________________________________________________________________________________________________________________________

      首先说一下kill命令,它是通过pid(进程ID)来杀死进程,要得到某个进程的pid,我们可以使用ps(process status)命令,默认情况下,kill命令发送给进程的终止信号是15,但是有些进程不会理这个信号,这样的话,可以用9信号来强制杀死,信号9是不会被忽略的强制性执行信号。

          而killall和pkill都是使用命令名来终止进程的有效手段,它们不同于kill通过pid来杀死进程的方式,它可以理解为成批成批的杀死进程,当然这么做的危险性也相对提高了不少。当然它们也可以给进程发送相应的终止信号。

           比如我们要杀死mysql的相关进程,我们可以使用pkill -9 mysqld即可杀死所有mysql相关的进程,比较方便,不过它有可能会误删程序。

         

          下面是常用的信号的数字及其含义:

          1     表示从终端上发出的结束信号

          2     表示从键盘上发出的终端信号(即Ctrl+c)

          3     表示从键盘上发出的退出信号(即Ctrl+)

          8     表示浮点异常,比如被0除

          9     表示结束接受信号的进程,也就是强行杀死进程

         15    kill命令默认的终止信号

         17    子进程终止或结束的信号

         19    从键盘来执行的信号

  • 相关阅读:
    EFCore
    PS-邮件发送异常信息
    python-Django
    Autofac
    swagger
    查看哪个程序占用了端口
    SQL SERVER-系统数据库还原
    破解root密码
    WebApi路由
    async,await.task
  • 原文地址:https://www.cnblogs.com/kinwing/p/11104966.html
Copyright © 2020-2023  润新知