Linux常用命令 进程相关命令[重要]

Part01 ps

1、简介

命令:ps

对应单词:process status

作用:查看当前正在运行的进程

常用参数组合:ps -ef

-e参数:对应单词entire,表示全部。具体指显示系统中全部的进程信息。

-f参数:对应单词full-formate,表示完整格式。

效果:

2、进程信息中各列数据说明

列名含义
UID进程的用户信息
PID进程id。由系统分配,不会重复。
PPID父进程的id。父进程和子进程的关系是:父进程启动了子进程。
CMD当前进程所对应的程序。
C用整数表示的CPU使用率
STIME进程启动时间
TTY进程所在终端。所谓终端就是用户输入命令的操作界面。
TIME进程所占用的CPU时间

3、父进程和子进程之间的关系

简单来说,父进程和子进程的关系是:父进程启动了子进程。我们可以使用pstree命令查看整个进程树。

4、和其他命令配合

①分屏查看进程信息

全部进程的信息太多了,一屏无法全部显示,所以我们希望可以分屏显示并由我们来控制翻页。为了达到这个目标,我们可以使用管道符号将ps -ef命令的输出数据传送给less命令。

ps -ef | less

②精确查询一个具体进程信息

我们通过Xshell远程连接Linux系统,靠的是sshd这个服务。这个服务如果正在运行中,那么一定会有这个服务对应的进程。所以下面我们来查询一下sshd这个命令的进程。

我们看到这里返回了3条结果,其中前两天都是和sshd服务相关的结果,但是最后一条不是。

root 72826 3456 0 20:06 pts/0 00:00:00 grep –color=auto sshd

仔细观察一下就能发现,这其实是grep命令本身。因为grep命令运行过程中本身也是一个进程,“grep sshd”正好也匹配sshd,所以就被选中了。但是这是一个干扰项,并不是我们真正要查询的内容,所以需要把它从查询结果中排除。

再用一层管道,使用grep命令的-v参数把匹配grep的行排除,返回不匹配的结果,这就是我们最终想要的。

Part02 kill

1、简介

命令:kill

作用:杀死进程

说明:kill命令本质上是给进程发送信号。

2、举例

①打开火狐浏览器

在Linux系统中打开Linux系统自带的火狐浏览器。

②查看火狐浏览器的进程id

另外一个是浏览器插件,不用管。

③使用kill命令结束火狐浏览器进程

kill -s kill 3325

另一种写法是

kill -9 3325

上面两种写法本质上都是发送kill信号给火狐浏览器进程。

Part03 top

1、简介

命令:top

作用:实时查看系统运行情况和健康状态。

2、细节

①命令与参数

命令名更新时间间隔(秒)不显示任何闲置或者僵死进程通过进程id监控单一进程
top-d 间隔秒数-i-p 进程id

②操作控制

按键功能
P默认值,根据CPU使用率排序
M以内存的使用率排序
N以PID排序
d设置数据刷新的时间间隔,单位是秒
q退出

在top命令模式下按h键会显示如下的帮助信息:

③查询结果字段解释

[1]第一行信息为任务队列信息
内容举例说明
12:26:49系统当前时间
up 1 day, 13:32系统的运行时间,前面例子表示本机已经运行1天13小时32分钟
2 users当前登录了2个用户
load average:0.00, 0.00, 0.00系统在之前1分钟,5分钟,15分钟的平均负载。 <br>一般认为小于1时,负载较小。如果大于1,系统已经超出负荷。
[2]第二行为进程信息
内容举例说明
Tasks: 95 total系统中的进程总数
1 running正在运行的进程数
94 sleeping睡眠的进程
0 stopped正在停止的进程
0 zombie僵尸进程。如果不是0,需要手工检查僵尸进程
[3]第三行为CPU信息
内容举例说明
Cpu(s):0.1%us用户空间占用的CPU百分比,us对应user
0.1%sy内核空间占用的CPU百分比,sy对应system
0.0%ni改变过优先级的进程占用的CPU百分比,ni对应niced
99.7%id空闲CPU的CPU百分比
0.1%wa等待输入/输出的进程的占用CPU百分比,wa对应IO wait
0.0%hi硬中断请求服务占用的CPU百分比,hi对应hardware IRQ
0.1%si软中断请求服务占用的CPU百分比,si对应software IRQ
0.0%stst(Steal time)虚拟时间百分比,也叫被hypervisor偷走的时间。 <br>就是当有虚拟机时,虚拟CPU等待实际CPU的时间百分比。
[4]第四行为物理内存信息
内容举例说明
2031912 total物理内存的总量,单位KB
70496 free空闲的物理内存数量
1780676 used已经使用的物理内存数量
174864 buff/cache作为缓冲的内存数量

使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是还未纳入内核管控范围的数量。

纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存还给free,因此Linux系统运行过程中free内存会越来越少,但不影响系统运行。因为这表示更多的空闲内存被内核管理了。

[5]第五行为交换分区(swap)信息
内容举例说明
2097148 total交换分区(虚拟内存)的总大小
1137824 free空闲交换分区的大小
959324 used已经使用的交互分区的大小
58640 avail Mem在不交换的情况下,对启动新应用程序可用内存的估计

交换分区是一个非常值得关注的地方,如果swap区的used数值持续发生变化那么说明在内核和交换分区之间正在持续发生数据交换,这表示内存不够用了——必须不断把内存中的数据保存到硬盘上。

Part04 netstat

1、简介

命令:netstat

对应单词:net status

作用:查看网络状态

常用参数:netstat -anp

参数名作用
-a显示所有正在或不在侦听的套接字。
-n显示数字形式地址而不是去解析主机、端口或用户名。
-p显示套接字所属进程的PID和名称。

2、说明

netstat命令显示的网络状态信息包含两部分内容:

  • 本机和外部的连接状态信息
  • 本机系统内部进程间通信信息

①网络连接信息

字段含义说明:

②进程间通信信息

我们重点关注的是网络连接信息。

3、使用技巧

①分屏查看

TIP

netstat -anp | less

②根据进程名称查看网络状态

TIP

netstat -anp | grep sshd

③根据端口号查看网络状态

TIP

netstat -anp | grep :22

这里需要注意一下,端口号本身就是一串数字,进程id也是一串数字。那么根据端口号匹配时,很多无关的进程id也会被匹配到,造成大量不必要的干扰。此时给端口号数字前加上冒号就好多了。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇