【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 信号不允许进程进行任何清理操作,可能会导致数据丢失或文件损坏。

相关推荐
iFlow_AI11 小时前
iFlow CLI + ACK MCP Server:让 ACK 容器运维进入对话时代
运维·ack·iflow·iflow cli
郝学胜-神的一滴11 小时前
Linux进程与线程控制原语对比:双刃出鞘,各显锋芒
linux·服务器·开发语言·数据结构·c++·程序人生
IT利刃出鞘11 小时前
Docker Compose--解决容器时间不正确的问题
运维·docker·容器
山上三树11 小时前
进程状态详解
linux·运维·服务器
山上三树11 小时前
task_struct 详解
运维·服务器·网络
oMcLin11 小时前
如何打造Linux运维监控平台:Prometheus + Grafana实战与性能优化
linux·运维·prometheus
木卫二号Coding11 小时前
jupyterlab-安装与启动
linux·运维·服务器
fengyehongWorld12 小时前
Linux logger命令
linux·运维·服务器
一只鹿鹿鹿12 小时前
网络信息与数据安全建设方案
大数据·运维·开发语言·网络·mysql
南知意-12 小时前
GitHub 6K Star! 一款完全免费的音乐播放器,爽听VIP歌曲!
linux·windows·开源·github·开源软件·mac