【Linux】【操作】Linux操作集锦系列之三——进程管理系列之(三)进程kill相关命令

简介: 【Linux】【操作】Linux操作集锦系列之三——进程管理系列之(三)进程kill相关命令
  • 本系列文章,将整理一系列Linux环境下进程相关的操作命令,包括进程启动、kill、挂起、查看、前后台进程切换等各种命令。


  • 本文为本系列的第三篇,进程的kill,主要关注如何kill进程的相关操作。


本文涉及的kill命令,都依赖当前系统的进程情况,本文仅以make这个进程为例来说明:


[qxhgd@localhost]$ ps -a
  PID TTY          TIME CMD
  708 pts/25   00:00:00 make


kill


  • kill命令man手册的说明


NAME
       kill - terminate a process
SYNOPSIS
       kill [-s signal|-p] [-q sigval] [-a] [--] pid...
       kill -l [signal]
DESCRIPTION
       The  command  kill  sends the specified signal to the specified process or process group.  If no signal is specified, the TERM signal is sent.  The TERM signal will kill processes which do not catch
       this signal.  For other processes, it may be necessary to use the KILL (9) signal, since this signal cannot be caught.
       Most modern shells have a builtin kill function, with a usage rather similar to that of the command described here.  The '-a' and '-p' options, and the possibility to specify  processes  by  command
       name are a local extension.
       If sig is 0, then no signal is sent, but error checking is still performed.


  • 主要有两种操作:


– 查看不同信号ID的含义;


– 给进程发信号,进程以PID代表;


  • kill操作实例:


– 发信号:


[qxhgd@localhost]$kill 708         #SIGTERM,终止进程,
[qxhgd@localhost]$kill -19 708     #SIGSTOP,暂停进程;     
[qxhgd@localhost]$kill -18 708     #SIGSTOP,暂停进程;     
[qxhgd@localhost]$kill -9 708      #SIGKILL,杀掉进程;  


– 查看各信号含义:


[qxhgd@localhost]$ kill -l
 1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP
 6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1
11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM
16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP
21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ
26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR
31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3
38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8
43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7
58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2
63) SIGRTMAX-1  64) SIGRTMAX


killall


  • man手册说明:


NAME
       killall - kill processes by name
SYNOPSIS
       killall [-Z, --context pattern] [-e, --exact] [-g, --process-group] [-i, --interactive] [-o, --older-than TIME] [-q, --quiet] [-r, --regexp] [-s, --signal signal] [-u, --user user] [-v, --verbose]
       [-w, --wait] [-y, --younger-than TIME] [-I, --ignore-case] [-V, --version] [--] name ...
       killall -l
       killall -V, --version
DESCRIPTION
       killall sends a signal to all processes running any of the specified commands.  If no signal name is specified, SIGTERM is sent.
       Signals can be specified either by name (e.g.  -HUP or -SIGHUP) or by number (e.g.  -1) or by option -s.
       If the command name is not regular expression (option -r) and contains a slash (/), processes executing that particular file will be selected for killing, independent of their name.
       killall returns a zero return code if at least one process has been killed for each listed command, or no commands were listed and at least one process matched the -u and -Z search  criteria.   kil‐
       lall returns non-zero otherwise.
       A killall process never kills itself (but may kill other killall processes).


  • 和kill不用的是,killall的参数是进程名,根据进程名对进程进行操作;


[qxhgd@localhost]$killall make     #杀掉make
[qxhgd@localhost]$killall -19 make #暂停make


pkill


  • man手册说明


NAME
       pgrep, pkill - look up or signal processes based on name and other attributes
SYNOPSIS
       pgrep [options] pattern
       pkill [options] pattern
DESCRIPTION
       pgrep looks through the currently running processes and lists the process IDs which match the selection criteria to stdout.  All the criteria have to match.  For example,
              $ pgrep -u root sshd
       will only list the processes called sshd AND owned by root.  On the other hand,
              $ pgrep -u root,daemon
       will list the processes owned by root OR daemon.
       pkill will send the specified signal (by default SIGTERM) to each process instead of listing them on stdout.


  • 命令可以按照进程名杀死进程,和 killall 差不多,也是批量杀死运行中的程序;


ctrl命令


  • 前台进程的终止,ctrl+C


  • 前台进程的挂起,ctrl+Z


  • 对后台进程无能为力;


GUI


  • 对GUI程序,关闭窗口即关闭进程,和windows类似。
相关文章
|
21天前
|
缓存 监控 Linux
linux进程管理万字详解!!!
本文档介绍了Linux系统中进程管理、系统负载监控、内存监控和磁盘监控的基本概念和常用命令。主要内容包括: 1. **进程管理**: - **进程介绍**:程序与进程的关系、进程的生命周期、查看进程号和父进程号的方法。 - **进程监控命令**:`ps`、`pstree`、`pidof`、`top`、`htop`、`lsof`等命令的使用方法和案例。 - **进程管理命令**:控制信号、`kill`、`pkill`、`killall`、前台和后台运行、`screen`、`nohup`等命令的使用方法和案例。
87 4
linux进程管理万字详解!!!
|
12天前
|
存储 运维 监控
深入Linux基础:文件系统与进程管理详解
深入Linux基础:文件系统与进程管理详解
53 8
|
9天前
|
Linux
如何在 Linux 系统中查看进程占用的内存?
如何在 Linux 系统中查看进程占用的内存?
|
20天前
|
算法 Linux 定位技术
Linux内核中的进程调度算法解析####
【10月更文挑战第29天】 本文深入剖析了Linux操作系统的心脏——内核中至关重要的组成部分之一,即进程调度机制。不同于传统的摘要概述,我们将通过一段引人入胜的故事线来揭开进程调度算法的神秘面纱,展现其背后的精妙设计与复杂逻辑,让读者仿佛跟随一位虚拟的“进程侦探”,一步步探索Linux如何高效、公平地管理众多进程,确保系统资源的最优分配与利用。 ####
58 4
|
21天前
|
缓存 负载均衡 算法
Linux内核中的进程调度算法解析####
本文深入探讨了Linux操作系统核心组件之一——进程调度器,着重分析了其采用的CFS(完全公平调度器)算法。不同于传统摘要对研究背景、方法、结果和结论的概述,本文摘要将直接揭示CFS算法的核心优势及其在现代多核处理器环境下如何实现高效、公平的资源分配,同时简要提及该算法如何优化系统响应时间和吞吐量,为读者快速构建对Linux进程调度机制的认知框架。 ####
|
23天前
|
消息中间件 存储 Linux
|
29天前
|
运维 Linux
Linux查找占用的端口,并杀死进程的简单方法
通过上述步骤和命令,您能够迅速识别并根据实际情况管理Linux系统中占用特定端口的进程。为了获得更全面的服务器管理技巧和解决方案,提供了丰富的资源和专业服务,是您提升运维技能的理想选择。
39 1
|
Linux
Linux查看操作系统版命令
Linux查看操作系统版命令
101 0
|
4月前
|
Shell Linux C语言
Linux初学者必备:全面掌握核心命令
Linux命令是操作系统的核心组成部分,用于管理和操作文件系统、网络、硬件资源以及执行各种任务。下面列出了一些常用的Linux命令及其基本用途,
Linux初学者必备:全面掌握核心命令
|
5月前
|
运维 安全 Unix
Linux操作系统 , 常用命令
Linux操作系统 , 常用命令
下一篇
无影云桌面