Linux基础-进程管理

39 篇文章 8 订阅
20 篇文章 11 订阅

‍‍🏡博客主页:  Passerby_Wang的博客_CSDN博客-系统运维,云计算,Git学习笔记领域博主

🌐所属专栏:『Linux基础』

🌌上期文章: Linux基础-磁盘阵列RAID

📰如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀! 关注、点赞、收藏、评论。

目录

一、概述

二、查询进程

1、pstree命令

1)功能

2)格式

3)常用命令选项

4)实例

2、ps命令

1)功能

2)格式

3)常用命令选项(组合)

4)实例

3、top命令

1)功能

2)常用格式

3)实例

4、pgrep命令

1)功能

2)格式

3)常用命令选项

4)实例 

三、进程的前后台调度

1、前台启动

2、后台启动

3、进程的前后台调度

1)Ctrl + z

2)jobs 命令

3)fg 命令 

4)bg 命令

四、杀死进程

1、Ctrl+c

1)功能

2)实例

2、kill命令

1)功能

2)常用格式

3)实例

3、killall命令

1)功能

2)常用格式

3)实例

4、pkill 命令

1)功能

2)常用格式

3)实例


一、概述

        进程是指一个内存中运行的运用程序,每一个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程;进程也是程序的一次执行过程,是系统运行程序的基本单位;系统运行一个程序,是一个进程从创建到消亡的过程。

二、查询进程

1、pstree命令

1)功能

pstree(Processes Tree) 查看进程树

2)格式

pstree [选项] [PID或用户名]

3)常用命令选项

-a:显示完整的命令行

-p:列出对应PID编号

-h:列出树状图时,特别标明现在执行的程序

-l:采用长列格式显示树状图

-u:显示用户名称

-V:显示版本信息

4)实例

[root@wangwu ~]# pstree -a

systemd --switched-root --system --deserialize 22

  ├─ModemManager

  │   └─2*[{ModemManager}]

  ├─NetworkManager --no-daemon

  │   ├─dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf...

  │   └─2*[{NetworkManager}]

  ├─VGAuthService -s

... ... ...
[root@wangwu ~]# pstree -p

systemd(1)─┬─ModemManager(725)─┬─{ModemManager}(739)

           │                   └─{ModemManager}(750)

           ├─NetworkManager(870)─┬─dhclient(23845)

           │                     ├─{NetworkManager}(906)

           │                     ├─{NetworkManager}(908)

           │                     └─{NetworkManager}(28842)

           ├─VGAuthService(757)

... ... ...
[root@wangwu ~]# pstree -u

systemd─┬─ModemManager───2*[{ModemManager}]

        ├─NetworkManager─┬─dhclient

        │                └─2*[{NetworkManager}]

        ├─VGAuthService

... ... ...

2、ps命令

1)功能

ps(Processes Snapshot) 查看进程

2)格式

ps [选项]

3)常用命令选项(组合)

aux:

a:显示当前终端所有进程

u:以用户格式输出

x:当前用户在所有终端下的进程

-elf:

-e:显示系统内所有进程

-l:以长格式输出信息

-f:包括最完整的进程信息

4)实例

ps aux 列出正在运行的所有进程

[root@wangwu ~]# ps -aux

用户 进程ID %CPU % 内存 虚拟内存 固定内存 终端 状态 起始时间 CPU时间 程序指令

USER  PID  %CPU % MEM   VSZ     RSS   TTY  STAT   START   TIME  COMMAND

root    1   0.0     0.3  193788   3276   ?      Ss   09:43   0:02  /usr/lib/systemd/

root    2   0.0     0.0      0     0     ?      S    09:43   0:00  [kthreadd]

root    4   0.0     0.0      0     0     ?      S<   09:43   0:00  [kworker/0:0H]

root    6   0.0     0.0      0     0     ?      S    09:43   0:01  [ksoftirqd/0]

  

ps -elf 列出正在运行的所有进程

[root@wangwu ~]# ps -elf

F S UID   PID  PPID C  PRI  NI ADDR SZ   WCHAN         STIME TTY    IME CMD

4 S root   1     0  0  80   0 -  48447  ep_pol 09:43 ?     00:00:03  /usr/lib/systemd/

1 S root   2     0  0  80   0 -     0   kthrea 09:43 ?      00:00:00  [kthreadd]

1 S root   4     2  0  60  -20 -    0   worker 09:43 ?      00:00:00  [kworker/0:0H]

1 S root    6     2  0  80   0 -     0  smpboo 09:43 ?      00:00:02  [ksoftirqd/0]

#PPID:父进程的PID号

#PRI/NI:进程优先级,数值越小优先级越高

3、top命令

1)功能

top 进程动态排名

2)常用格式

top [-d 刷新秒数] [-U 用户名]

3)实例

[root@wangwu ~]# top -d 3 -U root

top - 15:30:41 up  4:54,  3 users,  load average: 0.03, 0.55, 4.94

Tasks: 215 total,   3 running, 212 sleeping,   0 stopped,   0 zombie

%Cpu(s):  1.7 us,  3.7 sy,  0.0 ni, 94.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

KiB Mem :   995640 total,    72628 free,   626060 used,   296952 buff/cache

KiB Swap:  2097148 total,  1876988 free,   220160 used.   137220 avail Mem



   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND

 95182 root      20   0  162088   2348   1592 R  1.0  0.2   0:00.28 top

 93658 root      20   0  113284   1604   1336 S  0.7  0.2   0:01.58 bash

   399 root      20   0       0      0      0 R  0.3  0.0   0:20.93 xfsaild/dm-0

 93649 root      20   0  165252   6172   4772 S  0.3  0.6   0:03.64 sshd

     1 root      20   0  193788   4324   2392 S  0.0  0.4   0:21.92 systemd

4、pgrep命令

1)功能

pgrep(Process Grep) 检索进程

2)格式

pgrep [选项]... 查询条件

3)常用命令选项

-l:输出进程名

-U:检索指定用户的进程

-x:精确匹配完整的进程名

4)实例 

[root@wangwu ~]# pgrep -l ftp  #列出名称包含为 ftp的进程信息

25610 sftp-server

93696 sftp-server

[root@wangwu ~]# pgrep -lx sftp-server  #精准查找进程信息

93696 sftp-server
[root@wangwu ~]# pgrep -l -U root #列出属于用户root的所有进程

1 systemd

2 kthreadd

4 kworker/0:0H

6 ksoftirqd/0

7 migration/0

... ... ...

三、进程的前后台调度

1、前台启动

输入正常命令行,运行期间占用当前终端

2、后台启动

在命令行末尾添加“&”符号,不占用当前终端

3、进程的前后台调度

1)Ctrl + z

功能

挂起当前进程(暂停并转入后台)

实例

[root@wangwu ~]# top

... ... ...

%Cpu(s):  1.3 us,  3.3 sy,  0.0 ni, 95.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

KiB Mem :   995640 total,    72680 free,   623704 used,   299256 buff/cache

KiB Swap:  2097148 total,  1877244 free,   219904 used.   139704 avail Mem



   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND

119964 root      20   0  162088   2328   1576 R  0.7  0.2   0:00.26 top

   399 root      20   0       0      0      0 R  0.3  0.0   0:22.25 xfsaild/dm-0

   758 root      20   0  320176   2108   1600 S  0.3  0.2   1:17.31 vmtoolsd

... ... ...

Ctrl + z 组合键

[1]+  Stopped                 top

2)jobs 命令

功能

查看后台任务列表

常用格式

jobs [-l 列出进程的PID号]

实例

[root@wangwu ~]# jobs -l

[1]- 119964 Stopped (signal)        top

3)fg 命令 

功能

将后台任务恢复到前台运行

常用格式

fg [数字]

实例

[root@wangwu ~]# fg #缺省序号则为最近1个任务

[root@wangwu ~]# top

... ... ...

%Cpu(s):  1.3 us,  3.3 sy,  0.0 ni, 95.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

KiB Mem :   995640 total,    72680 free,   623704 used,   299256 buff/cache

KiB Swap:  2097148 total,  1877244 free,   219904 used.   139704 avail Mem



   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND

119964 root      20   0  162088   2328   1576 R  0.7  0.2   0:00.26 top

   399 root      20   0       0      0      0 R  0.3  0.0   0:22.25 xfsaild/dm-0

   758 root      20   0  320176   2108   1600 S  0.3  0.2   1:17.31 vmtoolsd

... ... ...

4)bg 命令

功能

激活后台被挂起的任务

常用格式

bg [数字]

实例

[root@wangwu ~]# bg  #缺省序号则为最近1个任务

[1]+ top &

四、杀死进程

1、Ctrl+c

1)功能

中断当前命令程序

2)实例

[root@wangwu ~]# vim /wangwu.txt

Ctrl+c 组合键

^C

2、kill命令

1)功能

kill 请求目标进程退出杀死进程)

2)常用格式

kill [-9 强制杀死进程] PID...

3)实例

[root@wangwu ~]# ps aux | grep top

root       1975  0.0  0.2 162088  2324 pts/1    T    17:19   0:00 top

root       2483  0.0  0.0 112812   976 pts/2    R+   17:21   0:00 grep --color=auto top

root      25076  0.0  1.0 1039524 10012 ?     Sl   11:42   0:03 nautilus-desktop --force

[root@wangwu ~]# kill -9 1975

[root@wangwu ~]# ps aux | grep top

root       3581  0.0  0.0 112812   680 pts/2    R+   17:24   0:00 grep --color=auto top

root      25076  0.0  1.0 1039524 10012 ?     Sl   11:42   0:03 nautilus-desktop --force

3、killall命令

1)功能

killall  结束同名的的所有进程

2)常用格式

killall [-9] 进程名...

3)实例

[root@wangwu ~]# ps aux | grep top

root       4525  0.0  0.2 162088  2332 pts/1    T    17:27   0:00 top

root       5999  0.3  0.2 162088  2332 pts/1    T    17:31   0:00 top

root       6018  0.1  0.2 162088  2328 pts/1    T    17:31   0:00 top

root       6071  0.0  0.0 112812   976 pts/2    R+   17:31   0:00 grep --color=auto top

root      25076  0.0  1.0 1039524 10012 ?     Sl   11:42   0:03 nautilus-desktop --force

[root@wangwu ~]# killall -9 top

[root@wangwu ~]# ps aux | grep top

root       6194  0.0  0.0 112812   976 pts/2    R+   17:31   0:00 grep --color=auto top

root      25076  0.0  1.0 1039524 10012 ?     Sl   11:42   0:03 nautilus-desktop --force

4、pkill 命令

1)功能

pkill 按进程名来杀死指定进程杀死指定用户的所有进程

2)常用格式

pkill  [-9强制杀死进程]  [-U 用户名]

3)实例

[root@wangwu ~]# pkill -9 -U wangwu #踢出用户(杀死用户所有进程)

  • 42
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 39
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 39
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Passerby_Wang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值