PS查看,控制进程

程序:程序是保存在外部存储介质(如硬盘)中的可执行代码和数据的静态集合
进程:进程是运行在CPU及内存中出于动态执行状态的计算机程序,每个程序启动后可以创建多个进程
例如web,大量用户同时访问是,httpd服务会创建多个进程来提供服务


查看进程

1. ps命令:查看静态的进程统计信息(ProcessesStatistic)
a:显示当前终端下的所有进程,包括其他用户的进程,与x选项结合是将显示系统中左右的进程信息
u:使用以用户为主的格式输出进程信息
x:显示当前用户所有终端下的进程信息
-e:显示系统内的所有进程信息
-l:使用长(long)格式显示进程信息
-f:使用完整的(Full)格式显示进程信息

以上是ps命令常用选项,有些选项是不带“-”的,带上以后可能会有出入,习惯把上面的选项组合用如:ps aux 或 ps -elf 命令

ps aux 命令输出解释
这里写图片描述

USER:启动该进程的用户帐号名称
PID:该进程在系统中的数字ID号,唯一的
%CPU:占用CPU的百分比
%MEM:占用内存空间的百分比
VSZ:占用虚拟内存(swap空间)的大小
RSS:占用物理内存的大小
TTY:表明该进程在那个终端上运行。
STAT:显示了进程当前的状态,S(休眠),R(运行),Z(僵死),< (高级先级),N(低优先级),S(父进程),+(前台进程)。对于僵死状态的进程应该基于手动终止。
START:启动该进程的时间。
TIME:启动该进程的时间
COMMAND:启动该进程的命令名称

若执行ps -elf命令,则会以长格式显示所有进程,并且包含更丰富的内容,例如,输出信息中还包括PPID列(表示对应进程的父进程的PID号)

直接执行PS 不添加任何参数的话,只会显示当前正在运行的进程
由于执行命令以后显示的进程数量较多,需要借用管道符和grep 对显示的进程进行过滤,例如:查看bash进程
ps -elf | grep bash

2. top命令:查看进程动态信息
top可以动态的查看进程信息,CPU,内存等系统资源的占用情况,默认情况下每三秒更新一次,类似于WIN的任务管理器

top命令输出解释

系统任务(Tasks)信息:total 总进程数;running 正在运行的进程数;sleeping 休眠的进程数;stopped 终止的进程数;zombie 僵死无响应的进程数

CPU占用信息:us,用户占用;sy 内核占用;ni 优先级调度占用;id 空闲CPU;wa I/O等待占用;hi 硬件中断占用;si 软件中断占用;st 虚拟化占用,要了解空闲的CPU百分比,主要是看%id部分。

内存占用信息:total 总内存空间;used 已用内存;free 空闲内存;buffers 缓冲区域
交换空间占用:同上

3. pgrep命令:查询进程信息
pgrep [参数] [进程名]
-l 查询名字
-U 后面跟用户,查询某用户运行的进程
-t 查询运行在特定终端上的进程
例:pgrep -l -U dyq -t tty1

4. pstree命令:查看进程树
pstree命令可以输出linux系统中各进程的树形结构
格式:pstree [参数] [用户名/服务名等]
-p 选项使用时可以同时列出对应的PID号
-u 选项可以列出对应的用户名
-a 选项可以列出完整的命令信息
例:pgrep -ap dyq


控制进程

1. 启动进行并后台运行
进程可以分为前台运行和后台运行两种,前台运行需要等待运行完成后才可以运行下一个命令,后台运行的话,可以直接运行下一个命令。

怎么让进程在后台运行呢:在命令后面添加“&”,有空格
例如:service vncserver restart &

2. 挂起当前的进程(调入后台并停止执行)
Ctrl+z
当进程正在运行的时候按Ctrl+z键可以停止执行服务并调用到后台

3. 查看后台的进程
jobs -l 查看隐藏的进程

4. 恢复后台运行进程
bg [进程编号](BackGrourd,后台),可以查看后台进程来查看后台进程的编号

恢复后在前台运行
fg [进程编号](ForeGround,前台)

这里已经有解决办法了,fg命令才能把后台运行的进程转义到前台来
*注:整了个ping 命令,bg 1 以后在屏幕上不停的ping怎么也停不了,最后查看ping 进程的UIP号,给kill掉了。
当ctrl+c 无法终止运行的进程,或者需要结束其他终端上运行的进程的时候,就要用到kill,killall,pkill*

5. 使用KILL终止进程运行(单体伤害)
使用kill命令前,要使用进程的PID号作为参数
pgrep -l “ping”
kill 1
如果进程无反应,则需要用 -9 参数强杀,越塔强杀后进程的数据会丢失,所以不到万不得已别强杀
kill [-9] [进程UID]

6. killall(范围伤害)
killall 可以通过用户名杀掉进程,例如同时开了好几个vim进程
killall vim
killall 也有强杀
killall -9 vim

7. pkill 杀掉指定的进程(直线伤害)
格式:pkill [参数] [用户/终端号]
参数:-U 指定用户
-t 指定终端
-9 强杀
例子:pkill -9 -U ‘shasha’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值