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
相关推荐
70asunflower1 分钟前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
皮卡丘不断更2 分钟前
手搓本地 RAG:我用 Python 和 Spring Boot 给 AI 装上了“实时代码监控”
人工智能·spring boot·python·ai编程
想用offer打牌10 分钟前
MCP (Model Context Protocol) 技术理解 - 第一篇
后端·aigc·mcp
kylezhao201911 分钟前
C# 中的 SOLID 五大设计原则
开发语言·c#
千寻girling15 分钟前
Koa.js 教程 | 一份不可多得的 Node.js 的 Web 框架 Koa.js 教程
前端·后端·面试
爱打代码的小林18 分钟前
基于 MediaPipe 实现实时面部关键点检测
python·opencv·计算机视觉
程序员清风23 分钟前
北京回长沙了,简单谈谈感受!
java·后端·面试
聆风吟º26 分钟前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
神梦流30 分钟前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库
何中应32 分钟前
请求头设置没有生效
java·后端