一. 定义
kill命令用来删除执行中的程序或工作。kill可将指定的信息送至程序。预设的信息为SIGTERM(15),可将指定程序终止。若仍无法终止该程序,可使用SIGKILL(9)信息尝试强制删除程序。程序或工作的编号可利用ps指令或job指令查看
二. 语法
kill(选项)(参数)
选项
-a:当处理当前进程时,不限制命令名和进程号的对应关系; -l <信息编号>:若不加<信息编号>选项,则-l参数会列出全部的信息名称; -p:指定kill 命令只打印相关进程的进程号,而不发送任何信号; -s <信息名称或编号>:指定要送出的信息; -u:指定用户。
参数
进程或作业识别号:指定要删除的进程或作业
三. 实例
kill -l 列出所有信号名称
kill -l ) SIGHUP ) SIGINT ) SIGQUIT ) SIGILL ) SIGTRAP ) SIGABRT ) SIGBUS ) SIGFPE ) SIGKILL ) SIGUSR1 ) SIGSEGV ) SIGUSR2 ) SIGPIPE ) SIGALRM ) SIGTERM ) SIGSTKFLT ) SIGCHLD ) SIGCONT ) SIGSTOP ) SIGTSTP ) SIGTTIN ) SIGTTOU ) SIGURG ) SIGXCPU ) SIGXFSZ ) SIGVTALRM ) SIGPROF ) SIGWINCH ) SIGIO ) SIGPWR ) SIGSYS ) SIGRTMIN ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMIN+ ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX- ) SIGRTMAX
常用的信号
只有第9种信号(SIGKILL)才可以无条件终止进程,其他信号进程都有权利忽略
HUP 终端断线 INT 中断(同 Ctrl + C) QUIT 退出(同 Ctrl + \) TERM 终止 KILL 强制终止 CONT 继续(与STOP相反, fg/bg命令) STOP 暂停(同 Ctrl + Z)
强制杀掉tomcat进程
先用ps -ef找到tomcat的进程id(pid),再用kill -9 进程号,强制终止
ps -ef | grep tomcat root Aug05 ? :: /usr/local/jdk1..0_65/bin/java -Djava.util.logging.config./conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/apache-tomcat-/endorsed -classpath /usr/local/apache-tomcat-/bin/bootstrap.jar -Dcatalina.base=/usr/local/apache-tomcat- -Dcatalina.home=/usr/local/apache-tomcat- -Djava.io.tmpdir=/usr/local/apache-tomcat-/temp org.apache.catalina.startup.Bootstrap start root : pts/ :: grep tomcat -bash: ) - No such process