linux kill命令的参数差别和一个根据文件名杀死进程的sh解释

ops/2024/10/18 5:54:35/

kill 39813 和kill -9 39813 有啥差别?

在Linux系统中,kill命令用于向进程发送信号。kill 39813kill -9 39813的主要差别在于发送的信号不同,这会导致对目标进程的处理方式不同。

1. kill 39813

  • 当使用kill命令时,如果不指定信号编号或信号名称,默认发送的是TERM信号(信号编号为15)。
  • 进程在收到TERM信号后,有机会进行一些清理工作,例如关闭文件描述符、释放内存资源、保存状态等,然后正常退出。这种方式相对比较温和,给进程一个自我终止的机会,大多数情况下,如果进程编写正确且能够响应TERM信号,它会按照预期进行清理并退出。

2. kill -9 39813

  • 这里使用-9参数指定发送KILL信号(信号编号为9)。
  • 当进程收到KILL信号时,它会立即被终止,操作系统不会给进程任何机会进行清理工作。这种方式比较强硬,通常用于当进程无法响应TERM信号或者需要立即停止进程的情况,例如进程陷入死循环、占用大量系统资源且无法正常终止时。但是,由于进程没有机会进行清理,可能会导致一些资源没有被正确释放,例如文件描述符没有关闭,可能会造成数据丢失或文件系统异常;内存资源没有完全释放,可能会导致内存泄漏等问题。所以,在使用kill -9时应该谨慎,只有在必要的情况下才使用。

#解释以下命令
ps -ef | grep ProcessChamberServer_G35 | grep -v grep | awk ‘{print "kill " $2}’ | sh

以下是对该命令的逐步解释:

1. ps -ef

  • ps是用于查看系统中当前运行进程的命令。
  • -efps命令的参数选项。e表示显示所有进程,f表示以完整格式显示进程信息,包括UID(用户ID)、PID(进程ID)、PPID(父进程ID)、C(CPU使用率)、STIME(启动时间)、TTIME(累计CPU时间)、CMD(命令行)等。

2. | grep ProcessChamberServer_G35

  • |是管道符号,用于将前一个命令的输出作为后一个命令的输入。
  • grep是用于在文本中查找指定模式的命令。这里是在ps -ef输出的所有进程信息中查找包含ProcessChamberServer_G35的行,即筛选出与ProcessChamberServer_G35相关的进程。

3. | grep -v grep

  • 由于grep命令本身也会在输出中显示,这里使用grep -v来排除包含grep自身的行。-v参数表示反向匹配,即输出不包含指定模式的行。

4. | awk '{print "kill " $2}'

  • awk是一种文本处理工具。
  • 这里awk命令对前面grep过滤后的行进行操作。$2表示每行中的第二个字段,在ps -ef输出中通常是PID(进程ID)。所以awk命令会将每行中的PID提取出来,并在前面加上kill字符串,即生成类似kill 1234(其中1234是PID)的命令字符串。

5. | sh

  • 最后,将awk生成的包含kill命令的字符串作为输入传递给sh(Shell),sh会执行这些kill命令,从而实现终止ProcessChamberServer_G35相关进程的目的。

http://www.ppmy.cn/ops/126403.html

相关文章

基于springboo+vue+mysql私人西服定制设计与实现(源码+定制+开发)

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…

力扣(leetcode)每日一题 3315 构造最小位运算数组 II | 数学技巧

3315. 构造最小位运算数组 II - 力扣(LeetCode) 题干 给你一个长度为 n 的 质数 数组 nums 。你的任务是返回一个长度为 n 的数组 ans ,对于每个下标 i ,以下 条件 均成立: ans[i] OR (ans[i] 1) nums[i] 除此…

设计模式-原型模式(克隆、Clone、Prototype)

原型模式(克隆、Clone、Prototype)是一种创建型设计模式, 使你能够复制已有对象, 而又无需使代码依赖它们所属的类。 问题 譬如美国研制了一种特效药,而且还在专利保护器内,而印度制药公司看中了&#xff0…

C语言哈希表

哈希表(Hash Table)是一种高效的数据结构,用于实现快速的数据查找、插入和删除操作。哈希表通过将关键字(Key)映射到表中的位置(索引),实现近似常数时间的操作效率。哈希表在许多应用…

Oracle用户以及初学的经验

背景:目前略,后续补上 //创建用户 CREATE USER tpmeaccount IDENTIFIED BY 12345678; //授权权限 GRANT CONNECT, RESOURCE TO tpmeaccount;//登录, 以sysdba这个角色登录 , sys是用户名 /后面是密码 sqlplus sys/123456 as sysd…

【进阶OpenCV】 (18)-- Dlib库 --人脸关键点定位

文章目录 人脸关键点定位一、作用二、原理三、代码实现1. 构造人脸检测器2. 载入模型(加载预测器)3. 获取关键点4. 显示图像5. 完整代码 总结 人脸关键点定位 在dlib库中,有shape_predictor_68_face_landmarks.dat预测器,这是一个…

重构长方法之以方法对象取代方法

以方法对象取代方法 是重构长方法的一种技术,适用于那些过长、逻辑复杂且难以拆解的单一方法。此方法通过引入一个新的类,将原本庞杂的方法转化为一个对象方法,这样可以更容易将方法中的不同步骤拆解为多个私有方法,使代码结构清晰…

python实现屏幕录制,录音录制工具

python实现屏幕录制,录音录制工具 一,介绍 Python 实现的屏幕录制和录音录制工具是一个便捷的应用程序,旨在帮助用户同时捕捉计算机屏幕上的活动以及与之相关的音频输出。这个工具尤其针对教育工作者、内容创作者、技术支持人员以及任何需要…