linux如何杀死进程_kill

使用信号控制进程:kill
复制代码
kill 可将指定的信息送至程序。
一般地,kill 命令用于删除执行中的程序或工作。在系统运行期间,若发生了如下情况,就需要将这些进程杀死。
·进程展会用了过多的CPU时间
·进程锁住了一个终端,是其他前台进程无法运行
·进程运行时间过长,但没有预期效果或无法正常退出
·进程产生了过多的到屏幕或磁盘文件的输出

kill命令的基本语法如下:

复制代码
kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>]

参数说明

  • -l <信息编号>  若不加<信息编号>选项,则 -l 参数会列出全部的信息名称。

  • -s <信息名称或编号>  指定要送出的信息。

  • 程序\]  \[程序\]可以是程序的PID或是PGID,也可以是工作编号。

复制代码
进程信号是在软件层次上对中断机制的一种模拟,一个进程收到一个信号与处理器收到一个中断请求是一样的。
进程信号是最基本的进程间通信方式:可以在进程之间直接发送,而不需要用户界面;可以在Shell中通过kill命令发送给进程。
复制代码
kill -l   # 使用 kill -l 命令列出所有可用信号
复制代码
编号  信号名
1) SIGHUP 重新加载配置
2) SIGINT 键盘中断Ctrl+C
3) SIGQUIT 键盘退出Ctrl+,类似SIGINT
9) SIGKILL 强制终止,无条件
15) SIGTERM 终止(正常结束),缺省信号
18) SIGCONT 继续
19) SIGSTOP 暂停
20) SIGTSTP 键盘暂停Ctrl+Z

例:

发送9,15信号,观察终端程序状态

复制代码
touch file1 file2
tty  # 终端类型
vim file1   # 新建窗口2
vim file2   # 新建窗口3
ps aux | grep vim
​
#发送9,15信号
kill -15 pid1  # 程序正常关闭,自动保存
kill -9 pid2   # 内存中直接擦除

杀死进程

复制代码
kill pid

强制杀死进程

复制代码
kill -KILL pid

发送 SIGHUP信号

复制代码
kill -HUP pid

彻底杀死进程

复制代码
kill -9 pid

显示信号

复制代码
kill -l
相关推荐
史迪奇_xxx5 分钟前
10、一个简易 vector:C++ 模板与 STL
java·开发语言·c++
一张假钞6 分钟前
Ubuntu 24.04 安装 Jenkins
linux·ci/cd·jenkins
2301_801252228 分钟前
Java中的反射
java·开发语言
getExpectObject()10 分钟前
【jenkins】构建安卓
运维·jenkins
Kiri霧30 分钟前
Rust开发环境搭建
开发语言·后端·rust
tuokuac31 分钟前
查看你电脑上某个端口正在被哪个进程占用
linux
小池先生33 分钟前
服务请求出现偶发超时问题,经查服务本身没问题,问题出现在nginx转发。
运维·服务器·nginx
weixin-a1530030831634 分钟前
[数据抓取-1]beautifulsoup
开发语言·python·beautifulsoup
AI量化投资实验室38 分钟前
15年122倍,年化43.58%,回撤才20%,Optuna机器学习多目标调参backtrader,附python代码
人工智能·python·机器学习
java_logo41 分钟前
vllm-openai Docker 部署手册
运维·人工智能·docker·ai·容器