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

相关推荐
2401_892070981 天前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
雪可问春风1 天前
docker环境部署
运维·docker·容器
lwx9148521 天前
Linux-Shell算术运算
linux·运维·服务器
翻斗包菜1 天前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
somi71 天前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
双份浓缩馥芮白1 天前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
海的透彻1 天前
nginx启动进程对文件的权限掌控
运维·chrome·nginx
黄昏晓x1 天前
Linux ---- UDP和TCP
linux·tcp/ip·udp
路溪非溪1 天前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
此刻觐神1 天前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习