【Linux】理解 Ubuntu 中的 kill 和 killall 命令


我把我唱给你听

把你纯真无邪的笑容给我吧

我们应该有快乐的

幸福的晴朗的时光

我把我唱给你听

用我炙热的感情感动你好吗

岁月是值得怀念的留恋的

害羞的红色脸庞

谁能够代替你呀

趁年轻尽情的爱吧

最最亲爱的人啊

路途遥远我们在一起吧

🎵 叶蓓《想把我唱给你听》


在 Ubuntu 系统或任何 Linux 发行版中,kill 和 killall 命令是两个强大的工具,用于管理正在运行的进程。了解如何正确使用这些命令可以帮助您有效地控制程序的执行,特别是当程序无响应或需要优雅关闭时。本文将详细介绍这些命令的用法,帮助您掌握如何在 Ubuntu 系统中管理进程。

1. kill 命令

kill 命令用于向正在运行的进程发送信号。虽然常见的用法是终止进程,但实际上 kill 可以发送各种类型的信号。

基本语法:

bash 复制代码
kill [options] <pid>

是进程ID,您可以通过 ps, pgrep 或类似工具找到。

常用信号:

SIGTERM(15):默认信号,请求进程优雅地终止。

SIGKILL(9):立即终止进程,不可被阻塞或处理。

SIGSTOP(19):暂停进程,而不是终止。

示例:

bash 复制代码
# 使用默认信号 SIGTERM 终止进程
kill 1234

# 强制终止进程
kill -9 1234

# 暂停进程
kill -19 1234

2. killall 命令

killall 是一种更为高级的命令,它根据程序名而不是进程ID来终止进程。

基本语法:

bash 复制代码
killall [options] <program_name>

<program_name> 是进程的名称,如 firefox。

选项:

-i:交互模式,终止前确认。
-v:详细模式,显示正在发送的信号。

示例:

bash 复制代码
# 终止所有名为 'firefox' 的进程
killall firefox

# 交互式终止 'gedit' 进程
killall -i gedit

注意事项

使用 kill 和 killall 时,需要确保您有权操作指定的进程。通常,您只能操作自己的进程,除非您是超级用户。

在使用 SIGKILL 信号之前,最好尝试 SIGTERM。SIGKILL 信号不允许进程进行任何清理操作,可能会导致数据丢失或文件损坏。

相关推荐
EMTime2 小时前
Docker运行OpenWRT
运维·docker·容器
lolo大魔王2 小时前
Linux 文件系统超全面详解(原理、结构、挂载、分区、inode、日志、管理命令)
linux·运维·服务器
磊 子4 小时前
详细讲解一下epoll
linux·io·epoll·io多路复用
printfLILEI4 小时前
php中的类与对象以及反序列化
linux·开发语言·php
zyl837215 小时前
Docker 使用手册
运维·docker·容器
古月方枘Fry5 小时前
MGRE实验
运维·服务器
叠叠乐6 小时前
redmi k90 pro max 强解BL,刷海外rom, 并刷入sukisu ultra
linux
stolentime6 小时前
FreeDomain 本地开发环境快速搭建指南
运维·服务器·网络
xiaoye-duck7 小时前
《Linux系统编程》Linux 进程间通信之管道基础解析:从匿名管道原理到基于管道的进程池实现
linux